Long warning, this article tells the story of a non-professional college students, how to get rid of confusion, how to determine the goal, work hard, grow from setbacks, and finally become a CTO story. If you read patiently, you will get what you want.
The protagonist of this article is Shi Zhongyu, who graduated from a college in a second-tier city in 2011, majoring in information and computer science under the department of Mathematics.
I have six years of working experience in the software industry, and have participated in the development of many large and medium-sized projects in second-tier and first-tier cities. Currently, I work as CTO in the company, mainly responsible for the core technology research and development and management of the company.
In six years, I grew from a layman to A CTO, and my development experience is of great reference to all of us.
The following is spoken in the first person.
When I just went to college, I didn’t have the busy and fast pace of high school, so I could sleep until I was hungry. You’ll have plenty of time to play the games you want to play, go to the cities you want to go to, and most importantly, have a relationship that nobody cares about.
But deep in my heart, there are dark clouds of “confusion”, including:
1) Why am I going to college?
2) What is the use of what I have learned? How can I use it?
3) What will I do after graduation?
4) What skills should I learn so that I don’t end up unemployed after graduation like others?
.
The cloud has never gone away, and no one can lift it. For this reason, I consulted many seniors, teachers and seniors, but it turned out that they were just as confused as ME and did not know how to solve our problems. The only good advice I got was: make the most of your time, read more books and learn more technology.
So I have nothing will bubble in the library, look at all kinds of books, not limited variety, not limited theme, crazy reading for a long time. Read a lot of famous people’s biographies, for my confusion I have a few feelings.
1) Just do it!
2) Don’t fill your pockets, fill your head first, and those who fill their heads will eventually fill their pockets.
3) It is easiest to achieve fruitful results in the gaps between established disciplines.
4) I want to do creative, challenging and varied work, and computer software development is just such a job.
My major is Information and Computing Science, which sounds like it belongs to the Department of Computer Science, but actually it is a major under the Department of Mathematics. We have learned a lot of mathematics courses, but relatively few computer courses. In this way, I also belong to the halfway home to enter the computer world, I believe that many people are the same as me, not a computer class, but by their own exploration and learning, is trying to enter the software development industry.
Of course, this process is very helpless and painful, in order to learn computer-related knowledge, I spent a lot of thoughts, mainly through the following ways to learn:
1) I got to know my friends in the computer department of the university. I used my friend’s account to log in to the FTP server of the computer department to learn the above Java courses. With notepad to type a lot of code, in the command line execution, but for a long time, or do not know what use to Java.
2) The library thumbed through a large number of computer related books
Understand that Java can do the client, do GUI development, I think to do some simple procedures with interface. But the feeling is not exciting enough, unlike the game interface cool, more distressed.
3) Audited computer-related courses in the Computer Department, but was despised as a result
4) Consult peers through Internet search, forums and QQ groups. I don’t know how the problem was despised again.
(Liu Comments: Know what you need, not afraid of contempt to work hard towards the goal, how many people can do that?)
After half a year of fumbling, I finally understood what programming was, and finally realized that I had started to get started and could do some projects.
When I was a sophomore, I had an opportunity to help one of my teacher’s friends to develop a material management system. I put a lot of effort into it and made a lot of mistakes, such as database design. As a result, the table structure design was very unreasonable.
Later found a website called VB language and Access database, drag drag drag can complete a simple program. At the beginning, it was very sad. I could not even describe my own problems, so I was despised by others.
Later, a kind-hearted senior finally understood my problem and helped me make a prototype, telling me which parts of the previous database were not properly designed and which books I should read.
After a variety of efforts, or to the small project to get done, the customer is very satisfied, said the young man can, hard work, should have achievements in the future software. I got a lot of inspiration and a lot of confidence.
(Liu comments: Seize the opportunity, study hard, ask for advice, and finally complete the project, get praise, this is a typical positive feedback. During college, students who are interested in developing in the software industry should strive for such experience.
The first job is Java engineer, the written test is very good, should be the first few. In the second interview, I had the following dialogue. Now I think I was pretty crazy.
Interviewer: Tell me the difference between mysql database and Oracle database.
I :(before the interview, I said I had read it by heart.)
Interviewer: Look at your resume, you are not majoring in computer science. Tell me about your advantages over those majoring in computer science.
Me: 1) I learned a lot of math courses during my undergraduate study, and my logical thinking ability is much stronger than that of computer students.
2) I am just like them. I learned a lot of theories in college, but lacked actual project practice, which is similar to everyone else.
3) I can handle all the subjects as difficult as mathematics. Meanwhile, my computer skills are as good as theirs and I am better than them in learning ability. If you give me time, I will surely surpass them.
Fortunately, I was successfully admitted by this company and entered this company for internship. After graduation, I stayed in this company and was very happy to work here. The work experience in this company made me become a professional developer, called software development engineer in the industry.
With the advance of working hours, I gradually got to know the status quo and development process of this industry, and gradually encountered the confusion and bottleneck of career development.
Especially after working for three years, the current job can bring you the technical improvement is very limited, every day is to add, delete, change and check, to say the worst, is moving bricks.
I can see what I will look like in five or ten years from my boss and leaders, but their positions and jobs are not what I want. I hope I can have greater growth and a higher platform, so I choose to quit after much consideration.
At that time, VR, virtual reality and other technologies were very hot, I was also very interested in these projects, I thought it would be very interesting to play these projects, happened to know the senior contacted me, said shenzhen, we do some projects together.
I gave up the stable job and the promotion opportunity which may be very smooth in the future, and chose to go to the big city to experience myself in a more strange and complex environment.
When I arrived in Shenzhen, I met the senior who I always wanted to work with. Under the guidance of the senior, I soon started a new job.
The biggest difference between Shenzhen and the city I used to live in lies in its fast pace and high efficiency. People can pull all-nighters, or even work days and nights on end, to finish a job that was previously unthinkable.
I found that my predecessor mainly used PHP, because his projects were short term and fast projects, and a heavy language like Java was not suitable. So I had to learn PHP, and IT turned out that PHP was an amazing language, very efficient, and you could do a project in one night.
My predecessor’s idea was to throw me, who could not swim, into the sea to swim. I was not good at PHP, so he threw me a project and told me to study by myself immediately if I was not good at it.
I felt very helpless and painful. I had planned to deploy and go online for the customer on Sunday, but I had not made any progress on Saturday.
On Saturday evening, the senior came to me and asked me, “How are you doing with this project?”
I say: I still can’t handle anything.
He said, “It’s okay. Here, I’ll show you what to do.”
Then he sat down and started banging away at the keyboard all night.
By the time the sun rose the next day, the project was just finished.
And then take the subway and deliver it to the customer and tell them how to use it.
At that time, I felt that my senior was too capable and tolerant, and other leaders criticized you or dismissed you when they saw your failure. He showed what a programmer should look like through his superior abilities.
After the project was delivered, we chatted while eating at a tea restaurant in Shenzhen. He told me a lot about his past experiences. I made up my mind to learn more technology from him.
For one year, I met customers, set requirements, discussed technologies, delivered projects and discussed the future of the company together with my senior colleagues. I learned a lot and greatly honed and improved my skills.
However, it is also very hard. There is almost no Saturday or Sunday in a year, except for eating, rest and work. It is quite crazy.
Unfortunately, we never figured out what the future of the company would look like, and he always wanted to experience projects that would feed the company, train him, fulfill the dreams of others, and survive himself.
At that time, I gradually got tired of helping others to do projects all the time, while my own company did not have its own core products. Without core products, there would be no brand and no stable and sustainable profits.
This period of training can be summarized as the following two points:
1) Quick learning ability.
Because I may have to complete a small project in a week and deliver it, and this project is not assisted by other people, all by myself front-end, background, database design, all by myself, a real full-stack engineer.
2) Communicate and work efficiently.
In my previous job, because I was developing the company’s own products, we were given sufficient time in the project plan, allowing us to procrastinate or absent-minded to complete the work.
In Shenzhen, however, none of this is possible, and if there is a problem, I need to communicate clearly with relevant people accurately and timely, determine the solution, and complete the work in the shortest time possible. It is because of the training of these projects that I have developed the habit of time management and efficient work.
(Liu Comments: The first three years in the workplace may decide your whole life, the accumulation and habits formed in these three years will deeply imprint on you. You can go crazy while you’re young.
At the beginning of 2015, I handed over my work, said goodbye to my predecessors, and joined another entrepreneurial team in Shenzhen. This project made me really understand what entrepreneurship is.
At that time, the premier happened to be caught up in the entrepreneurial boom in China. He drank a cup of coffee in a coffee shop in Zhongguancun, and there were many bubbles in the coffee, which was actually a metaphor for the scene of entrepreneurship at that time.
Capital has gone crazy, and the whole society is encouraging people to start their own businesses. If at that time you are in a company honest work, your friends will use a strange look at you, you see XXX are out to start a business, where is your dream? Won’t you come out and start a business?
It can be seen how crazy the entrepreneurs were at that time and how hot the capital was. XX project got millions of financing. XX project has been heavily purchased by XX. In the entrepreneurial circle, continuous fermentation inspires every entrepreneur to develop their own projects day and night, and quickly put them into the market, and quickly iterate, obtain data, go to the road show, and find investors.
The start-up team I joined is in such a crazy environment. This project is mainly committed to an overall solution for the home appliance market. We hope to provide an overall solution from repair, maintenance, recycling and replacement for every household appliance through the means of the Internet.
Home appliance market is a trillion scale of the market, the current situation is messy, chaotic charges, no standardization, and there is no giant. This project is dedicated to improving the status quo of such services, hoping that the whole industry can improve the service quality and improve the efficiency of the industry with the help of the Internet and brands. It seems to be a very good project, which has a market and value, and has indeed solved a big problem existing in this society for a long time.
The model is O2O mode. The platform directly reaches the owners through community promotion. The owners place orders through wechat. After the service, the owner evaluates the service of the master. Complete the entire transaction and service loop.
I don’t know what you think of this industry or this project. I believe many people still think this project is good and can be carried out. However, I want to tell you that we failed to carry on this project smoothly.
1) The core of success or failure of O2O projects lies in frequency. Low frequency and high cost of acquiring customers mean that such projects will take a long time to recover capital.
2) FOR a long period of time, O2O projects need to quickly occupy the market, occupy the user’s mind, and obtain as much operation data as possible. Therefore, it was impossible not to burn money, and our team’s money was limited and could not afford to burn, and we failed to reach consensus with investors at key points, resulting in repeated setbacks in financing, and finally had to terminate and disband the team.
3) Team members are unstable. Since it is a start-up company, team members may choose to change jobs or quit because the company cannot offer appropriate salaries, which seriously affects the normal operation of the company.
4) Capital is icing on the cake, not a lifeline. Feelings and dreams are worthless in the face of capital, which pursues profits and only moves toward the direction with huge market potential and future value.
After the failure of this project, my savings have been used up. Of course, I have a deeper understanding of entrepreneurship, and fully realize how important it is for an enterprise, especially a start-up, to survive and be stable. That is why, after I returned to my hometown, I always stressed to my partners that we must survive before we develop, think clearly before we make decisions, and avoid blindly burning money.
After the startup project in Shenzhen failed, I decided to give up the opportunity of other projects in Shenzhen and returned to my hometown in the provincial capital to start a new startup project. The new project is still an O2O project.
This time is dedicated to outdoor parent-child activities, mainly to solve the problem of how children spend their leisure time on weekends or holidays.
Compared with household appliance maintenance, this project is much more frequent. And this project has been in trial operation in local cities for half a year. The operation data is very beautiful, and it is also welcomed by parents. There are also investors with investment intentions, willing to invest in the project to expand to the country.
After JOINING the team, I reconstructed the project and re-developed a system, which was successfully launched and promoted within a month. After three months of operation, we decided to abandon the project and reorient. The reasons are as follows:
1) The negotiation with the investor breaks down and the investor gives up the investment. Decided to burn their own money, promotion.
2) The acquisition cost of O2O projects remains high. Has been costing the company money with little effect.
3) Parent-child activity is a weekly project with low unit price and high labor cost and limited profit space.
4) Limited personnel capacity and accumulation, unable to continuously output high-quality activities.
5) The original start-up capital of the company has been basically consumed, and the company is already facing a survival dilemma.
Based on the above points, we decide to give up this project and choose the project that can make the company survive. We will consider the operation of this project later. Therefore, based on the resources and accumulation of the founders, we set down several principles:
1) Do what we can, what we know.
2) Use the Internet to do things far away from the Internet.
3) Do what makes money, what keeps us alive.
According to these principles, we found the education and training industry that we can do, which is far away from the Internet, we are familiar with, and this industry has good cash flow. The pain point is obvious: many institutions or schools have no information, do not know how to use the Means of the Internet to recruit students.
Therefore, we made several industry surveys, quickly adjusted the direction, and developed an information management system suitable for training institutions. The system mainly solves the following problems:
1) Provide micro official websites for organizations. Other people can learn about organizations on the network and how to contact organizations and find organizations.
2) Home-school communication. Through the wechat public account, teachers can publish their children’s homework and performance at school, and parents can check and understand them through the home-school communication function. In addition, the information of the school is precipitated for subsequent analysis and research.
3) Marketing tools. It mainly solves the problem of difficulty in school enrollment. With the help of the social ecosystem of mobile Internet and wechat, it can quickly spread information and collect the contact numbers of intended customers. Telephone return visit, audition conversion.
After the above changes and adjustments, the company successfully launched the product into the market, and received feedback from many schools. The number of users reached hundreds in 2016. The company was profitable and solved the problem of our survival.
With the decline of popularity of wechat and the flood of wechat marketing, the popularity of our products also began to decline. Fortunately, we have found a new direction and the new business has been carried out smoothly.
Along the way, I stepped on a lot of pits, sum up my views on entrepreneurship, I hope to help you:
1) entrepreneurship is actually a business, so we must consider making money, not profitable entrepreneurship is playing rogue.
2) Choose an area that you are familiar with and good at, that really needs change and has great business value.
3) Try to avoid the competition with the giants, choose vertical segments, make features, make differences.
4) Find suitable partners, clarify the division of labor and benefit distribution among teams, and ensure the stability of the team.
5) Bold and efficient trial and error, quick decision-making, efficient execution, and iterative thinking to start a business.
6) Avoid large and complete, but choose a single point, focus on this point to do the best, make barriers. Tell a good story, and when necessary, make use of the power of capital to make their projects quickly occupy the market and form a market monopoly, so as not to give the opportunity for newcomers to grab.
1) Please love your work, with a serious attitude to do every little thing.
2) Three people must have my teacher, learn from the people around you, treat technology to be honest, not must have the “shameless” spirit to ask clear, understand.
3) Work efficiently. If the technology is not skilled enough, invest more time to practice, to achieve proficiency, for half an hour to complete the work, do not delay spending more time, efficient to work, to complete the task well.
4) Communicate effectively. In the field of software development, team communication and collaboration is very critical, so you must be able to clearly express your views or problems, so as to ensure that team information can be smoothly uploaded and sent down.
5) Positive feedback. Give your boss timely feedback on your progress and any difficulties you are having. Keep your boss informed of your progress so he or she can make decisions.
6) Pay attention to cutting-edge technology and constantly enrich their own technology stack.
7) Focus on open source and relevant communities. Share your skills with others.
8) Get into the habit of blogging and summarizing. Stick to it, there will be great results.
(after)
What you see is just the tip of the iceberg, more wonderful articles, please move to “code farmers turn over 2016 article essence” or “code farmers turn over the first half of 2017 article essence”
Any tips you’d like to share? Welcome to contribute! My contact information: Wechat: Liuxinlehan QQ: 3340792577
Code farmers turn
Use storytelling techniques