From childhood projects to production-ready APIs: My journey with FastAPI at 18
I'm from West Belfast and at 18 I started like many self-taught developers with small Python scripts and half-finished tools that worked as long as I didn't touch them too much. Lately I've taken this more seriously and built a professional backend with FastAPI including file uploads, JWT authentication, background tasks, and full deployment.
At Q2BSTUDIO, a custom software and application development company, we offer similar solutions at a professional scale. As specialists in artificial intelligence, cybersecurity, and much more, we help transform personal projects into solid products. If you're looking for custom software, custom applications, or integrating artificial intelligence and cybersecurity solutions, we can help you.
Why I moved from Flask to FastAPI
Flask is ideal for prototypes, but when I added authentication, file handling, and background tasks, the complexity increased. FastAPI gave me structure without overengineering: request validation with Pydantic, native async support, automatic API documentation, and strong typing that improved my workflow. These advantages are also what we use at Q2BSTUDIO when designing custom software and custom applications for clients who require performance and scalability.
What I built
Currently the following works: JWT authentication, file uploads with SHA256 hash verification, file listing and secure downloads, background tasks with Celery and Redis, deployment with Docker on a Hetzner server using Coolify, basic test coverage with pytest, all served by FastAPI with async endpoints. It's not perfect, but it's solid and maintainable.
What went wrong and what I learned
There were no catastrophes, but there were learning barriers: dependency injection in FastAPI, which was confusing at first; testing async routes, different from what I knew; large file uploads without blocking the server required additional solutions; Docker setup with more trial and error than expected. I learned by breaking and fixing, something we encourage at Q2BSTUDIO when we develop custom software for real clients.
Tips for other developers
Don't overcomplicate things at the beginning. Build something useful and then polish it. Start using type hints early because when the project grows, they save you from serious errors. If something seems complex, break it down and rebuild it. Don't wait to be an expert to publish your work; receiving real feedback accelerates learning. At Q2BSTUDIO we recommend these principles when we advise on artificial intelligence, AI for businesses, and AI agents.
What's next
My next steps: create an API key system for public use, improve administration tools, write a deployment guide so others can use the project. At Q2BSTUDIO we also work on integrating AWS and Azure cloud services, business intelligence services, and Power BI solutions for clients who need advanced visualization and data analysis.
Final thoughts
This is the first time I feel like I delivered something complete from start to finish. I'm not in university, I don't work at a big tech company, and I don't use AI to do the work for me. I just write code and build solutions that solve real problems. If you're working on something similar or want feedback on your backend, leave a comment or visit the repository https://github.com/dillionhuston/Task-Automation-API
If you need professional support, Q2BSTUDIO offers custom software development, custom applications, artificial intelligence specialists, cybersecurity, AWS and Azure cloud services, business intelligence services, AI for businesses, AI agents, and Power BI. Contact us to take your project to production with good practices, testing, and secure deployment.
Tags: custom applications, custom software, artificial intelligence, cybersecurity, AWS and Azure cloud services, business intelligence services, AI for businesses, AI agents, Power BI, backend, FastAPI, Python, development




