In 2018, one year after graduating from university,…
With two years of software engineering experience, I found myself deeply passionate about creating products that bring value to people. The story I'm about to share marks my first venture as a technical leader and founder.
I had the privilege of collaborating with like-minded individuals who shared my enthusiasm for product creation, including developers and marketers. Together, we formed a team of five members with a shared mission and a desire to revolutionize online education for high school students.
At that time, our founding team was comprised of young and relatively inexperienced individuals – recent graduates who were still finding their footing.
Project Overview
Our project was a mobile application available on both Android and iOS, designed as a social networking platform for high school students. It aimed to facilitate connections and knowledge exchange among students, providing features such as online tests, virtual classrooms, and online courses, along with personalized data analysis to enhance students' subject knowledge.
Turning Point in My Life
From a technical standpoint, it might have been simpler to choose a basic model like Monolithic, but our team of dedicated programmers, always up for a challenge, decided to build a MicroService system. Despite the need to get our product to market quickly, which is typical for startups, we were willing to invest time in learning and gaining experience, as well as exploring new technologies.
Our project's tech stack included:
- Java 8 - Spring Boot for the backend, with the support of a vibrant community to facilitate rapid learning.
- A NoSQL database (MongoDB) with minimal relational constraints – promoting flexibility.
- Redis for caching.
- A message broker using RabbitMQ.
- An Angular 2+ Admin Dashboard.
- Monitoring application with Sentry, jPortfolio
The entire system was hosted on a VPS with CentOS 7, and we were confident in our ability to use Linux at the time.
System Architecture
We adopted a service-oriented design, with each service focused on a specific domain or primary feature, such as comments, users, media, and notifications.
Drawing from our previous experience, we also set up high-load systems, clusters, and load balancers, manually configuring them through Nginx.
We relied on caching and meticulously optimized code to keep the system running smoothly, even during peak hours, where high loads occasionally led to bottlenecks or configuration issues. These challenges provided us with valuable lessons and expanded our knowledge.
Product Development Process
Within two months of development, we completed the first version MVP and launched it to the market. The initial results were more than satisfying:
- Concurrent users (CCU): Approximately 200 active users.
- Daily active users: Over 5000 users.
- Downloads: 5000 downloads per day.
- Over the following three months, we continued to develop the product, introducing new features and optimizing the system, surpassing our expectations.
The timing of our product launch was opportune, coinciding with high school exams, which increased the demand for products like ours for skill review and practice. However, after that period, progress began to stall.
As the project's reserve fund dwindled, financial concerns and discussions about the business model came to the forefront, leading to conflicts among team members who shared similar opinions on product development orientation.
We explored various business models but failed to achieve positive results. After a prolonged period of trying to resolve internal conflicts and with the project's funding source exhausted, our group disbanded.
The project came to an end.
Lessons Learned
From a technical perspective, participating in a project from its inception provided me with a multi-dimensional view of product development. We dared to explore new technologies and approaches, serving as motivation to acquire new skills.
Building effective teamwork skills became paramount. We lived, ate, slept, and worked together, united by a common goal. We also discovered that creating products extends beyond technology and encompasses skills in sales and marketing.
The entrepreneurial spirit that drove us to embark on this journey remained a lasting lesson.
It was truly a memorable process in my career as a project founder. Even though it failed, it was a turning point that helped me make great strides in life.
Thank you for reading.
Top comments (0)