preface
In 2019, I have been carrying bricks for a factory in Shanghai for more than a year. Open the discussion area, watching everyone from the application of resume, run the interview, brush the face, choose Offer…… Two years ago, it was no stranger to return to a more lively discussion forum. After entering a factory in 2018, Huiniuke only sent a few internal tweets, but also many students 🤣. This time come back to want to become a society livestock towards the peak of life of everyone to write something, but no poetry book in the belly, I do not know where to write, had to piece together some words, broken.
Introduction to the
I graduated from a bachelor’s degree in 2018 and have been engaged in infrastructure for more than one year in a factory in Shanghai. I have been responsible for the development of the company’s middleware and governance system successively. Because it is in the basic RESEARCH and development department, the daily work is somewhat different from the general business department, this article mainly to share with you. If you are interested in basic research and development, you can chat with me privately
About work
Technology system
Development in the school is really free to use what you want.
However, enterprises generally have strict norms. As a screw, we can only choose to blend in.
For example, when I was doing SDK development, I had to use JDK7 for compatibility (I used 8 in college and never thought I would use 7 again…). . In the past, we used to use open source components. Now, enterprises generally have unified components for development, such as Kafaka for messages and ZooKeeper for configuration centers. Even the naming of variables should be consistent with the team.
Large factories generally have a lot of self-developed components, such as Sofa of Ali and CAT of Meituan. These components may have no chance to contact outside, so you need to learn them slowly. Many times they even feel that their only advantage over new employees is that they are more skilled in using the company’s system 🤣. Technology baggage
Following on from the previous issue, big companies tend not to like to use open source components directly because they can’t use them. In the school to do the project, generally choose the most popular structure, Kubernetes set up. In the company, I found that docker could not even be used 😅 (the company was still using VM). Dachang’s architecture has been in shape for many years. Many new things and concepts in the open source industry may not be compatible with the old architecture and system. In addition, a lot of self-developed components make Dachang increasingly burdened. And unlike small school projects, the burden of cleaning up involves the interests of many departments (many components have been replaced by open source architecture), not even a matter of leadership.
Working rhythm
Becoming a club animal is not a gradual process. You sell yourself from the moment you sign a contract. When I was just out of college, I woke up one morning and really, really wanted to go back to sleep, really, really didn’t want to work. But not 😫, think not to go to work to buckle money, will obediently climb up to go to work. It is 5 days a week without rest. When the project is tired, I am really out of breath. However, I have no choice but to work hard after signing the contract.
Vacations are rare and precious, no winter vacation or summer vacation after work, Chinese New Year or even a week off (super uncomfortable!!) So every weekend is precious.
In the school can learn tired touch fish rest for a while, in the company is really not. You feel like your boss and colleagues are watching you all the time (when you’re not), and you feel embarrassed to get distracted by your colleagues who are typing intently. This kind of pace is very tired, but it is the responsibility of the social livestock, after all, take money to do things.
Work overtime
Most of the Internet to work overtime, not overtime students really very happy. People who get off work after 8 o ‘clock basically lose the ability to do activities during the day, because it is late to get off work, many things can not be done, dinner with friends, play a few dota at home, have become a luxury. In particular, sometimes work overtime to 10 o ‘clock, the general commute home almost 11 o ‘clock 🤣, the basic wash sleep. Stay up late? It doesn’t exist. I have to work the next day!
In this wall crack suggest you rent next to the company, reduce the cost of commuting. When I just graduated, I had to take the subway after work, and it took me about 45 minutes to go home. After working overtime for a whole day, I was exhausted physically and mentally.
Some people may advocate hard work and dedication to the company, and believe that efforts will be rewarded, but I think the relationship between the company and the company is simple and there is no need to make it too complicated. The same session came in a classmate in the business side every day to work overtime late into the night, the result of 18 years of winter probation before the week was optimized by the company, received a notice in the afternoon, the next day directly leave, capital is so ruthless.
Interest and money
When I was in school, I really liked programming and often studied all kinds of new technologies and features. Once cracked the campus network, built a blog (still writing gugugu 🤣), wrote a crawler, filled with technical enthusiasm. However, work and interest are really two different things. After work, I basically stay in the technical circle of the project and have no chance to contact other technologies, which may lose freshness soon. When I got home from work, after a long day of typing, I felt like vomiting when I saw the code, and I couldn’t do anything I wanted to do anymore. And the driving force behind it is simple and brutal — money. The Internet is indeed a high-paying industry, but programmers really have money and no time to spend it. I used to think that young people can suffer more for money, but now I think it is not worth it to exchange more money for my free time, because there is no time to spend more money.
Pay respect, Internet industry is really can hang upside down! It’s so bad that I’ll probably get a salary increase similar to theirs next year when new employees come on board (true).
health
Do development for a long time in front of the computer, glasses really uncomfortable. Sitting for too long + no time to exercise will easily put on weight! Too much typing on the keyboard really makes your fingers sour. If you stay in the office for a long time, your skin is prone to oil and acne. If you eat too much take-out food, the nutrition will be poor.
About Basic R&D
The underlying knowledge
In basic RESEARCH and development, I mainly deal with various architectures and middleware, such as Kubernetes and registry, etc. Many students may have heard of or used them to develop in school, but it is estimated that few of them have directly participated in the development of these components.
I just joined the company to participate in the development of the company’s RPC framework, before which MY understanding of RPC was only limited to use. Yes, it’s all good. A good base component is one that hides technical details from users, but developers are different. The development of RPC required a deep understanding of network and serialization. I had to go back to the computer network in college and look at TCP protocol to pick up these “uncommon” knowledge in business development.
So there is no doubt about the technical growth that comes from doing basic component development, where you never have to worry about being a CRUD boy. But compared to the lack of business contact, easy to tie dead in the technology on the road.
Strict requirements
A business bug that may affect a business function; A bug in an underlying component that could affect all of a company’s business. Whenever something goes wrong with the underlying components, it’s catastrophic. Base component development is dancing on the tip of a pin (and base component deletions are the easiest), so be cautious.
Do basic research and development is also easy to be business students throw pot (escape), in the performance problems will always think of us 😂, so the basic component of the log, buried point is very detailed, is to ensure that every problem can be located, prevent users from throwing pot.
spur
Basic components are easy to compare. For example, there are many RPC frameworks, and users will spray if they do not do well. It is better to directly use the open source XXX 🤣. So do the basic component is always spurred forward by the user, because your user is the company’s colleagues, that day or not good service to find your station to HHH
Even after the development of new components, business colleagues may not be willing to use 🤣, but they also have to promote everywhere and attract customers, after all, components that no one uses have no performance.
demand
Basic components generally don’t have endless requirements, and often don’t even need 🤣, which is very different from business development, so we may take it relatively easy (and the year-end bonus may be smaller).
Infrastructure vs. Business development
This should be the most asked question… There’s no way to say it in a word or two, but each has its own strengths and there’s no one better than the other. Our department’s external materials have a very vivid sentence, “infrastructure is the company’s water and electricity”, we provide the lowest level of resources to support business development. Infrastructure is mainly targeted at the company’s development colleagues, so it is different from normal business development in terms of r&d process, quality requirements, and business value.
However, this is all ideal in theory, and in practice, infrastructure and business divisions vary from plant to plant. In the development period of many factories, there is no special division of infrastructure due to tight manpower and busy business. Many architectures use open source components and simple design, which is generally carried out simultaneously with business development. Only when the existing architecture is insufficient to support the growing business needs will manpower be transferred to the infrastructure. Therefore, the infrastructure department of many small and medium-sized factories is very simple, or even no infrastructure department, so we don’t have to worry about it. Due to historical reasons, different business groups in a CERTAIN T factory have developed their own infrastructure, which has led to the chaos in the internal structure of THE T factory. It is also claimed that the infrastructure within each business group has been unified since this year (it is said).
Also, can’t the business do infrastructure development? Of course not. Business students working on the front line can often find the pain points in development. Our factory has many architecture components that are born in the business department and then transferred to the architecture department at a later stage. In addition, the basic components discussed above are more general. Some businesses (such as financial services) require business-specific basic components, and they also organize a “business infrastructure department” within the line of business.
Shanghai rent
It’s really expensive, second only to Beijing, maybe. It is generally shared, with a small bedroom of 2K ~ 3K, and a master bedroom of 2.6K ~ 3.5K (body sense). One bedroom is more expensive, generally 3.5K +.
To rent the most simple is to find an intermediary, home chain, freely and other housing resources. Want to find high cost performance can go to douban to find a personal sublet house, more fate. the
Link: https://www.nowcoder.com/discuss/332659?type=0&order=4&pos=7&page=2
This article was first published on wechat public account: Programmer Georgi
If you are a toutiao user, you can get 59998 yuan worth of programming and postgraduate entrance examination materials in the background of my toutiao number programmer Georgi reply resources. If you think the article is good, welcome to follow my WX public number: I am a background development engineer of BAT Factory, focusing on sharing technical dry products/programming resources/job interview/growth feelings, etc., paying attention to sending 5000G programming resources and organizing an offer to help many people to win Java with the answer attached, free download CSDN resources.