An AI Developer Turns to Okteto for Assistance
Dishant Gandhi’s claim to fame started when he attended Snap's developer hackathon in 2021 to offer advice and help out participants with their development issues. He got to know about Okteto creating Rasa assistants and deploying APIs. While there he created a RESTful API using FastAPI on top of StickerKit, and deployed it on Okteto, which ultimately won him Community MVP. To learn how to build a Rasa chatbot with Okteto, click here!
Currently, Dishant builds assistants, APIs, and Android applications, working for Hoory, an AI-powered assistant that helps businesses automate customer communication. It allows companies to provide 24/7 support, improve customer experience, and uncover user insights.
What follows is an interview with Dishant Gandhi - Cloud Developer Elite.
Question: What development tools do you use as a cloud developer?
Dishant Gandhi: I use Python and Kotlin a lot more than other languages and development tools, such as Java, HTML, CSS, JS, and many more. When I was in grad school, Python and Django were my favorite. PythonAnywhere was the first cloud deployment service I knew that supported Python. I used Docker, Docker compose, Heroku's procfile, and have used Kubernetes and helm charts. I also use Okteto with Pycharm and Okteto's okteto.yml for development containers. Of course, I use Visual Studio Code for development environment access.
What challenges does every cloud developer face?
As a developer, the challenge is finding one good cloud service and machine to start cloud deployment with development environments. Another challenge is knowing whether that cloud service supports Python or does it have ssh access or not. Kubernetes is also a challenge. It’s difficult to get used to and remember how things work.
Is the migration from local development environments to production environments a common issue?
Most of the time, yes, it is an issue. I have faced this many times to be honest. But with Okteto, developers no longer have to worry about this. For example, an assistant that talks perfectly on your local machine can misbehave once deployed with a different configuration. So, I usually have to make the environment the same as the deployed environment. I have to write the Dockerfile with base and dependencies the same as the local environment so that the program/software works properly. This keeps it working since the local and cloud machines have the same base or dependencies.
What's the thing that's most exciting about cloud development?
One-click deployment is the thing that excites me the most; the second thing is the ability to access remote machines and do all changes and deployment by myself.
Okteto helps with cloud development because the dev previews are easy to deploy and run. If you’re a student, you can present your research/project directly from the Okteto cloud platform instead of using ngrok for certain services. I recommend Okteto for students to use in their final year projects.
Question: What mistake should every cloud developer avoid when dealing with Kubernetes?
While writing any deployment scripts, make sure to add tests or CI, code formatting, and styling. This ensures when you push the code on github and it starts CI/CD, it will check that the code is clean and readable and will not crash the server.
For example, I was working on a project where I had to upgrade a few methods and improve features. The code was so messed up that it literally took me three days to clean it and make it readable. So, this is the reason I keep checks and tests for every project I build. Even if the code is created and maintained by me, I have checks so that I can solve my own issues and learn more.
Discover how shifting from a local to a cloud development environment can accelerate developer velocity and drive innovation by 50%!