banner
leaf

leaf

It is better to manage the army than to manage the people. And the enemy.
follow
substack
tg_channel

Startup Company Annual Work Summary

The company had to disband our entire software development department due to a transformation, and as the head of the development department, I also had to resign. As I leave, I would like to summarize my work experiences over the past year at a startup.

  1. Interview
    At the end of January 2014, after the company held its annual meeting, I resigned and started preparing my resume to look for a new job. By chance, I encountered the current technical head of the company in a QQ group who was hiring. After a brief chat, he invited me to meet him in person to discuss further. The meeting took place in a café, where he asked me a few technical questions and seemed satisfied with my answers. We then discussed salary, which was quite good at 15K after tax. I was tempted, and after asking a bit about the company, he mentioned it was newly established and primarily focused on online education products. The requirement documents, development environment, and project architecture were all prepared in advance, so we could start development immediately. That was the interview process; I didn’t agree on the spot and said I would give him a response after a week. A week later, he called to ask how I was considering it. At that time, I had another offer from a different company, but the salary was lower than his offer, so I chose the higher-paying company and agreed to join after the New Year.

  2. Onboarding
    On the morning of March 2, 2015, I officially reported to the company. Upon entering, I was shocked to find that the company didn’t even have computers set up, nor was there any internet. My first reaction was that I felt deceived. I asked why the company had nothing ready, and he explained that the office was just rented, and the desks were set up only a couple of days prior, so they hadn’t had time to buy computers or set up the internet, but everything would be ready in a few days. I believed him. Gradually, other new hires reported to the company, and soon the boss arrived and organized a meeting to introduce the company. At this point, I learned that there were four partners: two investors, a man and a woman, a female product manager, and him as the technical partner. The two investors were not from the tech industry; the male investor was a lawyer, and the female investor was in finance. I later learned that the boss had spent a lot of money to poach an entire development team from another company, which consisted of seven people who had previously worked on a food ordering app. The team included members specializing in JavaWeb, iOS, Android, and database design, making it a fairly complete technical team. Three members officially started that day, while the other three had to wait two weeks to leave their previous jobs. The team leader had reportedly been developing for ten years and was considered an architect-level figure in my view. On my first day, without a computer or internet, I could do nothing but listen to him talk about the product requirements. This was quite frustrating; there wasn’t even a document outlining the product requirements. He only sketched out the intended features and modules on a whiteboard. On my first day, I felt everything was unreliable. I privately asked some members of the technical team, and they also found it strange, saying they had never seen such a software company. Everyone said they would wait and see how things went and would leave immediately if it didn’t work out.

  3. Buying Computers
    After the third day in the company, the internet was set up, and the first batch of computers was purchased. Upon checking the computer specifications, I found they were completely unsuitable for development; they were Lenovo home versions with only 4GB of RAM and no expansion options, and the CPU was inadequate, making them very sluggish. He was responsible for selecting the computers, and I later suggested returning this batch and choosing another brand. These computers were really not suitable for development. He then told me to select a batch of suitable development computers myself, with a price range of around 3000 to 4000. So, my first task upon entering the company was not to develop but to help buy computers. I selected Dell desktop computers on JD.com, bought a few, and the previous batch was left for others. All developers used Dell computers for development.

  4. A Small Incident
    About a week after joining the company, for some unknown reason, the team leader of the technical team, who had been poached at great expense, had a conflict with the boss. The boss called him to the company and, in front of everyone in the conference room, scolded him harshly. They fell out on the spot, reportedly because the team leader thought the technical head was unreliable and suggested replacing him. The boss believed he was very reliable and skilled and did not want to replace him. After the fallout, the technical leader did not come to work as previously stated after two weeks, and the remaining three team members also did not show up. Thus, the technical development team consisted of the three who had come earlier, plus me and another person, totaling five. Among the five, two of us were working on JavaWeb backend, one was designing the database, and another was doing Android development. He thought there were too few Android developers, so he asked me to switch to Android development. I had never done Android development before, but I was quite interested, so I agreed to switch.

  5. Product Development Process
    In the second week after joining, the company hired another Android developer, expanding the technical team to six members: three doing Android development and three doing JavaWeb backend development. Without any product requirement documents, he had us start developing an online English education product based on Android tablets. The product consisted of several apps: [Fun Learning], [English Application], [Reading Application], [Puzzle Game], [Personal Center], [App Store], [Video Application], and [Launcher Desktop]. Perhaps because there was no initial planning, we ended up with a large and comprehensive product, which caused subsequent development delays. We couldn’t meet the expected three-month timeline to launch the product and bring it to market. I will elaborate on this issue later. He assigned me to develop the App Store, but the task was only verbally assigned without using professional project management software like ZenTao or Project to arrange development tasks. There were no requirement documents for developing this App Store, no UI design, and no project development framework; everything started from scratch. He told me to model it after Apple’s App Store. The product manager had an iPad, so I borrowed it daily to look at and replicate.

From setting up the Android development environment to learning while developing, it was a bumpy process with considerable pressure. By mid-April, I had created a rough version and showed it to him. He was quite satisfied and told me that since the App Store was almost done, the Java backend team was understaffed, and I should help with that. So, I helped develop the JavaWeb backend, mainly working on the app's data interface development. Our app's backend was primarily developed using the three frameworks: Struts2, Hibernate, and Spring, which I was proficient in, so it was relatively easy for me.

By mid-May, the first version of my App Store was completed, but disaster struck. Due to the lack of requirement documents earlier, the product manager had not specified what it should look like. Now, the product manager had designed it and asked me to revise it according to her design. I made significant changes as per her requirements, but right after I finished, she told me the requirements had changed again, and it couldn’t be done like that anymore. Other colleagues also had to revise their work according to the new requirements, which led to a loss of control over the development timeline. Everyone had wasted months of effort, and the originally planned June product launch was pushed to July due to constant changes in requirements.

By mid-July, the relevant apps for the product were almost done, and we demonstrated them to the boss. After seeing them, the boss thought they were acceptable and planned to launch them to the market for validation. In August, a colleague and I went to Shenzhen to hand over our completed apps to a tablet manufacturer to have them installed on the tablets. We purchased 100 tablets from the manufacturer. After bringing the tablets back, we conducted over a week of functional and business testing, only to discover numerous issues. It was unclear whether the problems were due to hardware quality or because the ROM had been rooted, leading to instability, frequent freezes, and crashes, resulting in a poor user experience. The boss played with them a few times and was very dissatisfied, feeling that such products were completely unusable for market launch. We were instructed to resolve these issues before going to market, which delayed the launch until September. It took a full six months from March to September to finalize the product, which left the boss very disappointed and increasingly dissatisfied with both him and the product manager, leading to doubts about his capabilities.

  1. Starting Over
    After the product was completed, we began to market it. Our marketing strategy was to sell tablets with our app installed to users, earning a small profit on the tablets and then making money from the services provided by the app. The ideal was beautiful, but reality was harsh; we didn’t sell a single tablet, and the learning content within the tablets didn’t attract users, so no one was willing to buy. Thus, the product we had worked on for half a year became worthless. Later, for reasons unknown, there was a significant personnel change in the company. The boss let some people he deemed unreliable resign, including himself and the product manager. The boss then spoke with me, hoping I could take his place, rebuild the development team, and completely overhaul the previously developed products according to his vision.

Starting in October, I officially took over the entire development department. I reassembled the team, keeping those willing to continue and work overtime unconditionally, while letting those unwilling to continue leave. The development team was reduced to five people. After another half month, three colleagues left, leaving only three of us: one designer, one Android developer, and myself responsible for the JavaWeb side.

We summarized the mistakes made previously and unanimously agreed that the earlier products were too broad and lacked focus, failing to capture the essence of what we needed to do. As a result, each app lacked distinctiveness and quality. Among our products, only the [Fun Learning] app was valuable; the others were merely supplementary. Realizing that [Fun Learning] was our primary focus, we dedicated all our time and energy to developing it. After multiple discussions with the boss, we finalized the specific requirements. I wrote a detailed requirement document, established a development plan and timeline, and we restarted development. The designer redesigned according to the requirement document, while the Android team brought over some previously developed components. I completely discarded the entire backend development framework and rebuilt it according to the new requirements. After about ten days, our new version of [Fun Learning] was completed. I demonstrated it to the boss, who was quite satisfied, stating that this was what she wanted.

  1. Operations and Promotion
    After the new version of [Fun Learning] was completed, the boss began recruiting professional English teachers and foreign instructors to record English learning videos, which were then managed uniformly through the backend management system and displayed in the [Fun Learning] app. Next came the app promotion; the boss hired several people to form an operations team responsible for the app's operation and promotion. During this period, we made modifications and improvements based on feedback from the operations team.

Around mid-November, the boss saw a new concept English app that he thought was quite good, but it lacked a learning statistics feature. He asked us to create a similar app with a backend learning statistics function. The development cycle for the new concept English app took about 20 days, and we produced a nearly identical app with the added backend statistics feature to track user learning progress.

Once the new concept English app was completed, we began considering how to monetize it. Our revenue model primarily relied on the services provided by the app. We approached several English training institutions for collaboration, where they would handle student recruitment while we provided tablets and the app. Students recruited by the institutions would use our tablets to learn English, and our app's backend management system conducted detailed data analysis of their learning progress. In addition to collaborating with training institutions, we also set up our own training classes and recruited students independently, hiring part-time teachers to conduct classes. During this time, we reached cooperation agreements with several training institutions and established a few training classes ourselves, but due to recruitment issues, the number of students was low. To attract more students, we distributed flyers, held free trial classes, and promoted through WeChat, employing various promotional methods, but the results were mediocre.

Time flew by, and 2015 passed just like that. The company held its annual meeting on January 30, 2015, distributing project bonuses and having a dinner. In the annual meeting summary, we reviewed the mistakes made in 2015 and made specific plans for 2016, aiming to sign contracts with 50 training institutions, develop a teacher-end app for teachers, and a WeChat app for parents. After the annual meeting, the company went on holiday.

In 2015, the company made no profit at all, burning through over 3 million.

  1. Team Disbandment
    At the beginning of 2016, the company officially resumed work on the 8th. A new year brought new hopes, and everyone was full of confidence, hoping to smoothly promote the product as planned before the New Year and achieve profitability. However, reality was still harsh; our promotion efforts and collaborations with training institutions did not progress well. From February 15 to March 15, the company invested considerable manpower and effort into promotion, opening tutoring classes and inviting foreign teachers for free trial classes, but the results were still unsatisfactory. The costs incurred by the company far exceeded the income. On March 15, without any warning, the boss called the entire operations team into a meeting and announced that the company no longer intended to pursue the education business, disbanding the entire operations team. That afternoon, they settled their salaries and let them go. At 5 PM, the boss called me into the meeting room for a discussion, explaining the company's current situation and her thoughts. She felt that making money in the education sector was too difficult and did not want to invest more time and money into it. The situation the company was in was not the fault of the software development department; the apps we developed were perfectly fine. The main responsibility lay with her and the operations team, as we had not clearly defined a profitable model. The company temporarily no longer needed the software development department and currently had no software-related tasks for us. We were told to complete any remaining work and then look for new jobs. Thus, our entire software development department was disbanded.

  2. Reflections
    Over the past year at the startup, I have deeply felt that entrepreneurship must be in a familiar industry, with a clear idea of what to do and finding reliable people who can help us achieve it. I summarized the reasons for our company's failure:

  3. Both bosses were not from the IT industry and had limited understanding of the internet sector, making it difficult to grasp market direction.

  4. The other two partners, recommended by friends, were also not particularly reliable, lacking in both ability and experience, and similarly unable to grasp the entire product.

  5. The product we aimed to develop was merely the idea of the two bosses, without any market demand research.

  6. The company management was quite chaotic, with unclear job responsibilities and insufficient execution from the bosses. Many things were only discussed verbally without concrete implementation, and some decisions were not finalized.

  7. The initial product development process was severely unregulated, lacking a specific development plan, and adopting a parallel execution of product design and development, along with inadequate communication between the product and development departments, leading to significant discrepancies between the developed product and the initial vision, resulting in constant revisions and repeated delays in the development cycle, causing us to miss the optimal launch time.

  8. The core competitiveness and highlights of the product were not clearly defined. From the beginning, we aimed to create a large and comprehensive product without focusing on key aspects, wasting a lot of time and energy on irrelevant apps.

  9. Some preliminary preparations were also inadequate, with delays in selecting tablets and customizing ROMs, which were only hastily finalized when the product was about to launch.

  10. Gains
    Over the past year at the company, I have gained quite a bit. In terms of development skills, I mastered Android development, improved my WeChat development, and enhanced my JavaWeb development skills. I also participated in some decision-making regarding the company's operations and management, expressing my opinions and views. My role shifted from a regular developer to a project manager and department head. As a product development leader, you must have the ability to assess the project's development cycle and identify its challenges, allowing you to formulate development plans based on the project's situation. You must also have a good understanding of the personal capabilities of team members and assign tasks to the most suitable individuals for their strengths.

  11. Year-End Achievements

  12. App Backend Management System
    The backend management system for the app is my masterpiece, developed using Jfinal 2.0 + EasyUI. All of the company's apps currently rely on this backend for operation.

  13. App Results

image

Loading...
Ownership of this post data is guaranteed by blockchain and smart contracts to the creator alone.