preface
Recent work life is drifting, from Shanghai to chengdu, the family as the unit of the major decision, leave a line for career and technical frontier city there is a problem, but for the sake of housing (mostly) can’t afford to buy a house and living comfort, back to jam seems to be a better choice, and chengdu of the Internet is ok.
Along with the ability to ascend, is responsible for the types of work will gradually increase, consider the direction of the will is different, this time is not too much individual knowledge will be hindered, problems encountered in the work or too “big”, sum up effort, or too small, not suitable for separate written up, instead, this phenomenon caused a period of blog blank period, It’s basically a return to laziness, a return to slacking, a return to wanting to stay in your comfort zone.
Because began to lazy, so failed to learn new knowledge, the natural new article; Because I began to be lazy and unwilling to further study and dig into the problems in my work, I could not find a new article.
So people still have to keep whipping themselves ah, can not let themselves into the “blind” situation, have to effectively use the time, to go further!!
Now I am doing front-end in a small company. Due to the changes of the company and the position, I have some experience on how to do front-end in a small company. I would like to share it with you.
What is a good front-end team?
What was missing in the early days of the team
In a company, the higher the level is, the more attention is paid to business, and the less attention is paid to personal growth. Therefore, it is proper to evaluate a leader as a team whose members are better than him. For individuals, they should pay more attention to their own ability to grow, and then their ability to match their position, or even beyond their position, so that the team is relatively strong.
The supervisor (including the front end supervisor) must set goals that can be quantified. For example, if you are doing a business, how many KPIs is required, then the technology needs to consider how to achieve them. It is detailed to the R&D level and even the front end level, which is the so-called technical KPI.
For example, if H5 station wants to achieve the average daily ticket issuance of 10,000 this year, then this is the business target, which needs to be digested and assigned to each business team. It can be as follows:
1) SEO optimization
(2) the SEM optimization
③ Marketing advertising
④ wechat & Alipay & Mobile Baidu traffic access (wechat wallet is a very excellent traffic entrance, which can greatly increase traffic)
⑤ Field promotion
.
Of course, the above can only solve part of the problem, specific to the front end, we may start from the page conversion rate, establish the order funnel model, do performance optimization, do interactive optimization, each specific level needs to transform the target.
These are directly quantifiable things, because the current business has reached a bottleneck, or the company has reached a bottleneck, the business needs to do continuous trial and error, corresponding to the technology requires you to quickly iterate, low-cost iteration, continuous error tolerance.
Many questions are raised at this point:
The first is whether your team will take the initiative to work overtime to achieve the company’s goals and personal KPIs under similar high pressure.
The second is what is left of your team after this high-pressure round?
Based on previous experience, no team can endure endless overtime pressureCopy the code
In the previous ctrip wireless high pressure iteration experience, even so excellent team is in fact tired to the late, tired when prone to mistakes, hyperactive regret, surplus is not for long.
The third is how to help newcomers quickly integrate into the team, how to make 1+1=2.
As we all know, a good project is not a pile of people can pile up, how to make a project can be divided into the hands of each person, how to make the good and bad colleagues can better cooperate, this is what we need to consider.
To solve these problems is to rely on the usual accumulation, specifically reflected in the front end is:
1. In the continuous iteration, whether your business process is optimal (from product to design to front-end to final online process) 2. In the continuous iteration, whether the precipitation of public services and instrumental servicesCopy the code
What does a good front end look like
First, a good front end will be willing to work overtime, and a good front end will find ways to make the team work less overtime.Copy the code
I have communicated with some friends that many good ideas and ideas to improve work efficiency are made by several people in private at night after discussion, and then repeatedly put into practice for production.
Generally speaking, business KPIs are not too difficult for competent friends, so more is expected of them:
Strong awareness of current project performance deficiencies, causes of development inefficiencies and solutionsCopy the code
Many teams will start to “owe money” in rapid iteration, and they will not pay it back after a long time. Problems need to be solved. Team members can see the problem, no one says, no one does because they know it is a pit.
A good front-end should have good architectural design capabilitiesCopy the code
First of all, a good front end can clearly describe their technical solutions, and let people understand!
And then the architecture is designed to meet the long-term demand growth, even if the business channel is 10 times larger, 100 times more users, there will be no fundamental change.
A good front end should have good communicationCopy the code
Internally, a good front end needs to understand the personality and ability of team members and make appropriate task allocation and decomposition; Externally, they need to seize business without conflict of interest, and they are the main force of project promotion.
What should a small company’s front end do
Not all small companies are like this, but I’ve seen small companies where the front end of the business is rushing and struggling, and it’s a vicious cycle, first time business:
Overwork catch business – business end easy week – overwork catch iteration – business end easy week – overwork new business – business end easy……
Occasionally you will ask these friends why they have not accumulated anything, and the answer is basically the same: busy! They are really busy when they are busy, but if they are still busy the second time, there is a problem. If they are still busy the third time, the team is not healthy. A good practice is:
① Complete the separation before and after, this step can not be done, do not need to do ② form several sets of UI library ③ according to the business form, form a common business ④ front-end repetitive work tool ⑤ form an optimization system ⑥ form a statistical system ⑦ establish a page conversion funnel model ⑧ do ABTesting program......Copy the code
First of all, no matter what the reason, must be separated before and after, if there is SEO demand, then further promote nodeJS solution, after all, it is still difficult to rank first without money, SEO is basically meaningless.
In fact, small companies have a lot of pitfalls to take advantage of, and this will help you build your team’s reputation. Let me talk about a few details.
UI library
The shape of the UI library and the number of UI libraries will determine how much repetitive work you will do in subsequent projects. There are a few things to note about this UI library:
① Whether the UI is reusable
(2) Whether the UI can be customized
For example, if you ask a lot of friends to make this time selector, it will really be the time selector. If you let them change to the city selector, they will be completely dumbstruck:
(3) Whether the UI can be split and aggregated
Again, using the UI above as an example, this component is actually an aggregation component, consisting of a Select component and a pop-up layer component. Whether your UI is detachable is a big consideration in evaluating its quality.
.
The public service
A common service can be described as a larger “UI component”, but it is business related, and the UI is not generally coupled to the business. For the date picker above, whether it is a date or a region is ok, and should not request the service, it is pure UI component.
Public services are impure and must be related to business. Common public services on mobile terminals are as follows:
passport
Login registration, personal information management, even some authentication related, related to the company account, login registration is all kinds of activities, all kinds of business channels can be used for business, this kind of thing has to be serviced, but a lot of small companies don’t do it.
Because of the common features, the page design should be neutral. Several commonly used pages, such as login, should contain the following design:
① The style can be customized (pop-up layer, independent page and so on are common)
② Rollback can be customized, in fact, all public service rollback buttons need to be customized, login success to which URL login failure to which URL, click the browser back to recede which URL have to be agreed, less one is not a public service
(3) Single sign-on, in fact, there is no single sign-on at the beginning, and even we are not cross-domain, so the subsequent need to support it
There are many common services like passport, such as:
Wallet service, including user payment order related management
② City list, this should consider how to pass parameters
③ Feedback system
④ Company introduction
In addition to the c-side common page service, there will also be b-side statistical platform related.
Front-end instrumentalization
Static resource processing
A good and mature front end team is often judged by the degree to which the team is instrumented. A simple example is:
① How are your front-end static resources organized and packaged
② How do you solve the caching of static resources in the front-end? (a better solution is MD5)
The above two points can be easily done using build tools such as Grunt /gulp, and the concept of seed files can be introduced if there is a common framework file
Cross-domain problem
On the other hand, all front-end teams have cross-domain problems, especially with the front and back separation, where the server only provides APIS and the front-end code can run anywhere. So what do you do in this situation?
① use fiddler&charles as agent
② Provide a test server
③ Support jSONP cross-domain
(4) Cross-domain CORS support
So these solutions, which is best for the team, and which is the lowest cost (generally agency), are things we need to consider
Tips: I used Fiddler before, but now I use Charles on MAC. The two tools are very good, and the regex is well handled. I recommend using themCopy the code
Mobile adaptation
Students who switch from the back end to the front end generally have some natural advantages in business logic, but they tend to be weak in CSS. How to introduce REM without the feeling of developers, how to use LESS seamlessly with the existing mechanism, and how to deal with the pollution of CSS in single-page applications are the issues that need to be considered at the bottom of the framework.
Modular & componentized development
How to use modular development to address collaboration issues once the team is scaled up; How to use component-based programming thinking to simplify development complexity as business code complexity increases, these need to be applied to project practices, and the path is replicable;
Some optimization means, but also need to tool, frame, so that developers have no sense.
Front and back end collaboration
Front-end and server side, the development speed may not be synchronized, in fact, many times are not synchronized, in the case of the interface format has been agreed, the interface has not written, but the front-end can still write interaction, how the team write such fake data, this aspect will greatly improve work efficiency.
Order decline analysis
If in a certain period of time, the traffic of the whole station or the order quantity of the whole station decreased, how do you track the reason of this decline, how to avoid similar phenomenon to the greatest extent next time, at this time data statistics will avoid us to become blind, so we have to establish statistical platform, conversion rate model as soon as possible.
Iterate quickly to optimize the product, but if each iteration completely overturns the previous design, many times the company is standing still. At each step, you need to clearly know what went wrong with the previous version and optimize for the problem, rather than constantly changing the version.
After this revision, how do you know that this optimization is better than the last one, not caused by other factors? ABTesting program should be a must for every mature team. Continuous optimization is based on effective data monitoring and feedback mechanism.
conclusion
Since I haven’t written a blog for a long time, and since I happened to join a small team recently, I have sent out some ideas in the form of hydrology to discuss with you. I hope it will be useful to you.
Admittedly, it’s a little difficult for a front end to push through this, but it’s not impossible. The front end has to change its position from front-end engineer to software engineer.
I often hear a lot of front-end self doubting themselves, or just getting so bloated that they think there’s nothing left for the team to do, so consider this:
Is your team automated and safe, and there is no room for improvement in efficiency?
The importance of the front end needs you and me to work together. It is difficult to do the front end in a large company, but it is even harder to do the front end in a small company. We encourage each other together.
From first-tier cities to second-tier cities
A few years ago, WITH the idea of learning something new, I came to Shanghai and learned a lot here. There are several necessary conditions for learning:
① Good project
② Good team
③ Summary of overtime work
Most of the time, it’s not that some friends don’t work hard, but there are really few PV projects in China, and there are even fewer opportunities for entrepreneurial teams, so there is no such opportunity. At this time, watching many optimization done by others is to watch the fun, and it seems to know what, but in fact, nothing.
It is the best time in the ctrip, still have a lot of team did not keep up with the good, such as not wireless team, so wireless team of the package, if not really studious person is receiving, even if I were in wireless team, native team a lot of experience in the package is missing, and no matter how to inquire is about not to come out of, For example, I paid close attention to the native resource update mechanism for two years, and acquired a lot of knowledge piecemeal from various places. Now it seems that it is still not systematic enough, which is not a pity.
For example, once ctrip station appeared a major BUG, because it is the server side of the problem, he was shortsighted did not go deep, to now want to go deep no case, can only say that the opportunity is fleeting!!
So even after entering Baidu to understand the good of FIS, but really want to go deep words how can not touch the door, can only learn some ideas; This is also a frame after forming if the people behind how to maintain the maintenance of bad reasons, because they can not find the essence, later people will even spray the framework of all kinds of bad, but can not find their own scheme.
This is one of the major benefits of first-tier cities:
First-tier cities, with good projects (PV over 100 million), have better opportunities for good teams. As long as you work hard, you can gain a lot of experience.Copy the code
This means that if you are willing to learn, there is a great experience package to be gained. There are many enthusiastic gods who are willing to discuss with you, willing to share with you, and your sharing will bring you joy and fulfillment.
In addition, the salary package outside is much larger than that in second-tier cities. As far as I am concerned, the salary package back to Chengdu is less than 70% of the original. If I had not returned to Chengdu this time, my salary would have increased significantly, but I chose Guirong in the end.
False propositions about good chance
In fact, this is a false proposition (in my opinion). There is no denying that there are many opportunities in coastal areas, but it is really not good.
Strong work this thing really to say, you need people appreciate you, you have to your boss, went up to your boss up, have your boss’s boss also went up, if there is a boss lost power and influence, the new boss may shuffle, is good you stay, and is still respected, but more often it is possible to your packing, The high turnover rate on the Internet is no joke.
Ability is not equal to high position, because your ability is generally not so strong, can win company is minority after all, technical conditions more or more, want to quiet to write code, rarely make political struggle, and heart, and more fragile, in the face of unreasonable KPI, unlimited pit, or product is very easy to leave.
There are a lot of excellent people out there, so the real opportunity is only relative. If you come out with the idea of learning and gaining experience package, you will gain a lot. If you have enough experience package and want to develop further, then it is difficult, because management or communication may not be good at development.
Then they will focus on business development and KPI, and they need a lot of product knowledge, and they will even become products themselves. At this time, they will spend less time on technology. However, it is difficult to convince technical staff with poor technology.
Several people around me went out to do CTO, the results of the team just on track was swept out……
In addition, is the leader very hard outside, especially team rise, a good leader will accompany the team to work overtime, it will be very late, we have a good boss before (35) is with the team to work overtime, anyhow is bad money, if the leader lazy, a few years down is likely to fail, be eliminated, the midlife crisis is not to be ignored.
However, the opportunities and success rate of first-tier cities are still much better than second-tier cities. If you are willing to work hard and good at thinking, you can develop well. So why should we go to second-tier cities?
Why go to the second line
The main reason for going to second-tier cities is that the housing price is too expensive. For the same money, YOU can buy three houses in Chengdu. Moreover, the houses in first-tier cities are very remote, and it takes more than an hour to go to work and another hour to get off work.
Then the rhythm of outside work is too nervous, even nervous to no life, people who pursue 995 is normal, 996 is also possible, this will continue to overdraw your body, young point is ok, a little bit of age, if you have a family, it will not work, more will be considered.
For example, the requirements for getting a hukou in first-tier cities are quite strict. Children’s education and parents’ pension are all things you need to consider. After thinking about it, you will come up with an idea: If you don’t want to go back to your hometown, it’s not like you can’t find a job, so you come back…
The feeling after returning to Chengdu
After returning to Chengdu, I went on a business trip to Beijing the next day. I worked overtime for the whole Tomb-sweeping Day. After that, I also worked overtime for Chengdu.
However, the weekend can be very comfortable, once a month mom will come to cook something delicious for us to eat, this sense of happiness and belonging is not outside.
Today, I got off work at 8 o ‘clock, walked around the software park for more than 10 minutes, and then took a bus for 20 minutes to go home, this feeling is still very good…
Second-tier cities will still face all kinds of challenges outside. If you don’t want to face them, you still can’t do it. You can go back to your hometown to face them.