During high school, I spent most of my free time writing code and working on personal projects, most of which were in a niche community which desired products that automatically purchased products that normally sold out within seconds of going live, and reselling them for a profit. I worked with a team of friends to develop a cross-platform desktop application with a user interface and back-end to allow users to easily purchase any limited goods they wanted. The business we created ended up being successful enough that my parents allowed me to take a gap year to pursue the idea even further.
My general responsibilities included:
• Managing a team of engineers
• Making critical business decisions such as who to hire and where to direct resources
• Interfacing with and providing support for various customers
My development responsibilities included:
• Leading development of the back-end (Golang, gRPC)
• Leading development of the user interface (React.js & TypeScript)
• Leading development of all micro-services (AWS, Kubernetes, Golang)
• Deploy & create schemas for data in a database (PostgreSQL on AWS RDS)
• Scaling product and related services to >5000 registered users
• Integrating various third-party services
• ReCaptcha to prevent bot accounts from registering
• ConfigCat for remote configurations for micro-services and clients
• DataDog for collecting logs and metrics regarding product usage and micro-service statuses
• GitHub Actions for automatic CI/CD
• ...and much more!
Working on Nyte taught me much more than I expected, primarily due to the several types of hats I wore. One day I would be doing customer support, the next I'd be deploying a new micro-service.
I eventually had to close the business due to a family situation, however both me and the people I worked with gained real-world experience of developing and maintaining a complex product with real customers.