How awesome are top programmers?Top programmers demonstrated outstanding abilities in many aspects:
** 1. Technique Ability **
1. ** High programming efficiency **
- For example, a programmer with a monthly salary of 80k in a company could visualize data in an hour and efficiently present the data in an intuitive form. This required a deep understanding of relevant programming tools (such as Python), as well as data processing and visualization libraries.
2. ** Master multiple technical fields **
- For example, Jeff Dean was the brain behind Google's search index technology and the designer of Google's large-scale distributed computing system. This showed that he had deep attainments in complex and key technical fields such as search technology and distributed computing. Another example was Linus Torvalds, the father of Linux-Git. He made groundbreaking contributions to operating system development and version control systems, demonstrating his outstanding technical capabilities in the field of system software.
3. ** Possesses deep professional knowledge **
- For example, Jon Skeet was the number one guru on the Stack Overflow, with 425 Q & A per month. He also wrote C#(C#In Depth), which meant that he had a deep understanding of the C#language and could apply his knowledge to solve various programming problems.
** 2. Ability to be innovative **
1. ** Create a programming language or tool **
- For example, Brendan Eich created the javelin programming language, which is now widely used in many fields such as web development, changing the interaction mode of the entire Internet. Richard Stallman created the Emacs text editor and the multi-language programmer, which became an important tool for programmers and pushed forward the development of programming.
2. ** Create a software project or technical framework **
- Linus Torvalds created an open-source operating system that became one of the basic operating systems for servers, mobile devices, and many other devices. Gavin Wood, the founder of Ethereum, was constantly innovative in Web 3.0, Decentralization, and Blockchain technology. His work promoted the development of Ethereum protocol and other related projects, which was of great significance to the development of the Blockchain field.
** 3. In terms of influence **
1. ** High reputation in the industry **
- For example, Jon Skeet was ranked first on the programming technology question and answer website, Stack Overflow, and had a high reputation in the global programmer community. As the father of Doom and the co-founder of id Software, John Carmack had a high reputation in the field of game development. His technology and creativity had influenced the development of first-person shooter games.
2. ** Driving the Industry **
- Google's programmer, Jeff Dean, had promoted the development of Google's search technology by designing large-scale distributed computing systems. Google's search technology had a huge influence in the global Internet information search field, driving the development of the entire Internet industry in terms of search experience and data processing. Similarly, Linus Torvalds 'open-source operating system model influenced the development model and open-source culture of the entire software industry.
"When a programmer meets a psychologist" is equally exciting. Everyone is welcome to click to read it!
Is there a difference between programmers and programmers?There was a difference. Sometimes, a programmer was just a single program related worker, while a programmer referred to a professional who was engaged in program development and program maintenance. The scope was broader. Generally, programmers were divided into programmers and programmers, so coders (comparable to programmers) were only one type of programmers. From the perspective of education, experience requirements, and job content, programmers might have work experience requirements related to specific industries (such as the glasses industry) and be proficient in using specific software programming, while programmers were more focused on writing software in mainstream computer languages. They might involve more domain knowledge, algorithm processing, etc., and might focus on a specific field or know more types of systems. In some cases, the scope of knowledge and professionalism required of a programmer were higher.
"When a programmer meets a psychologist" is equally exciting. Everyone is welcome to click to read it!
Will programmers be replaced?There were currently two views. One view was that programmers could be replaced. With the development of AI, Devin, which claimed to be able to handle the entire development project end-to-end, had made significant progress in automated programming and self-solving problems. It could solve some programming related problems independently, and its efficiency and knowledge far exceeded that of ordinary programmers. It could complete tasks such as building network applications, finding and repairing program code problems, and so on. Coupled with the emergence of a large number of AI programming tools, some people believed that the work of programmers could be replaced by large models, just like foreign language translation. It was even predicted that the number of programmers would be greatly reduced in 10 years, and only 10% would be required to do review work.
Another view was that programmers would not be replaced. This was because the job of a programmer was not just to write code. More importantly, it was to transform real-world needs into abstract models (modeling) and to repeatedly maintain code assets. In actual projects, most of the time spent by programmers was spent on tuning, checking problems, locating problems, fixing bugs, communicating with the demand side, determining agreements, and so on. The actual time spent on writing code was very small, and these AIs were difficult to completely replace. For example, although Huawei had a precedent for automatically generating code, it only completed the subsequent code work after the programmer had compiled the flow chart and framework. Moreover, even if some jobs could be replaced by AI, new jobs would be created, such as a "new generation of programmers" who had programming thinking and knew how to use AI tools efficiently.
"When a programmer meets a psychologist" is equally exciting. Everyone is welcome to click to read it!
Will programmers be eliminated?It was unlikely that programmers would be eliminated.
In terms of job content, writing code, testing software, debugging programs, and teamwork to complete projects required professional programming knowledge and skills. This was the field of expertise of programmers. For example, when writing code, one had to use different programming languages to create efficient and maintainers according to the needs of the project. This process required a solid programming foundation and good coding habits. In terms of testing software, programmers had to write test cases to ensure that the code ran normally and fix bugs in time to improve the stability of the software through various testing methods. When they debugged the program, they had to use analysis logs and use debuggers to find the root of the problem and fix it.
From the perspective of career development, from junior programmers to intermediate and senior programmers, and even to management positions such as technical managers, as experience and skills continued to accumulate, programmers 'technical and management abilities continued to improve, and their roles in projects became more and more important.
However, programmers faced the challenge of rapid technological updates. New programming languages, frames, and tools were constantly emerging, which required programmers to continue learning new knowledge and skills to keep up with the pace of technological development. If they could not adapt to this change, they might face difficulties in their career development. However, this did not mean that the entire community of programmers would be eliminated.
" When a programmer meets a psychologist " is equally exciting. Everyone is welcome to click to read it!
Recruiting programmersThe following is the information about the recruitment of programmers:
* * 1. Recruiter's perspective **
1. * * Recruitment requirements and salary **
- Different regions and different types of enterprises had different needs for programmers, and their salaries were also quite different. For example, in Huizhou Boluo County, the salary range of the current technical secondary school students was 5 - 8K; in Dongguan-Humen Town, the salary range of the Android development programmer was 10 - 15K for undergraduate students with one year of work experience.
- When companies were hiring programmers, in addition to considering work experience and academic qualifications, they would also set salaries based on specific technical skills. For example, it involves a specific programming language (such as Java), a specific programming task (such as the production of an ATM program), and so on.
2. * * Recruitment Channel **
- Comprehensive recruitment websites such as Zhaopin.com, 51Carefree Future, Boss Direct, Lagou.com, and Hunting were common choices. There were many posts on these websites, but the workload of filtering information was heavy and the competition was fierce. The feedback might be slow.
- The company's own channels: the company's official website or public account will publish recruitment information. This was suitable for job applicants with clear goals. The job information was comprehensive and updated in a timely manner.
- Social media: There are a lot of job information and talent resources on platforms such as Pulse and LinkedIn. In addition, industry communities such as Zhihu, CSPD, developer headlines, Sifou, and Open Source China could also provide job opportunities. They could attract the attention of employers by perfecting information, posting job information, and participating in community discussions.
- Headhunter recommendations: Internet headhunters can quickly match positions, but the headhunting market is mixed. You need to identify their professionalism and areas of expertise.
- Personal community: Including WeChat group and QQ group, there are two types of technical guidance group and recruitment group, which will release targeted recruitment information.
- Personal branding: Attract potential employers by posting Bilibili videos, TikTok videos to show professional abilities and project experience, or writing technical blog posts to show off work results.
- Internal recommendations: Internet companies such as Byte, Xiaomi, Ali, and Baidu have internal promotion channels. Internal promotion positions are sometimes not seen in the market and the demand is very urgent. The success rate of interview may be higher.
- Human Resources: Use social networks, Alumni Associations, Fellow Villagers, and other means to get to know more people and obtain job opportunities.
3. * * Biases and considerations in recruitment **
- Some companies had prejudice against older programmers, such as thinking that older programmers were not as motivated as young people, unwilling to work overtime, or worried that they could not keep up with technological changes. However, in reality, there were many older programmers who were experienced, technical, and responsible. Some companies would think that older programmers were expensive and cost-effective, but there were also older programmers who were willing to lower their salary requirements to fight for opportunities.
* * 2. Job Seeker's Perspective **
1. * * Job Seeker's own conditions and salary expectations **
- A job seeker's education, work experience, technical skills, and other factors would affect their salary expectations and job competitiveness. For example, the salary of a 3 - 5 years working experience in Beijing may be 3,000 - 5,000 yuan per month; in Xi'an, an undergraduate programmer with 1 - 3 years of working experience can be paid 8000 - 10000 yuan per month.
2. * * Choice of job search channels **
- Choose different job search channels according to your own situation. If it was a fresh graduate or a job seeker with less experience who wanted to cast a wide net, a comprehensive recruitment website might be an option, but they also had to pay attention to other channels. If you are interested in a specific company, you can pay attention to the company's own channels. Those who wanted to make use of their connections could seek opportunities through internal recommendations and connections, while those who wanted to show off their technical strength could attract employers by establishing a personal brand.
"When a programmer meets a psychologist" is equally exciting. Everyone is welcome to click to read it!
Are programmers boring?This statement was not accurate. A programmer was often misunderstood as boring, but in fact, their lives were not like that. From the sharing of programmers on some social media platforms, they had rich life content such as food, sports, and social interaction. Although there might be some seemingly boring code typing processes during work, such as drinking water, going to the toilet, and looking at the operating girls, this was only a part of their work state and could not represent their overall life. Moreover, many programmers looked quiet on the outside, but they were fanatical on the inside. In certain situations or environments, they would behave unexpectedly and have the characteristics of being stuffy. For example, their refusal to wear plaid shirts and refuse inefficient overtime showed their unique personality. Therefore, one could not simply think that programmers were boring.
" When a programmer meets a psychologist " is equally exciting. Everyone is welcome to click to read it!
Are programmers tired?A programmer was usually tired. In terms of work intensity, they needed to sit in front of the computer for a long time to carry out high-intensity mental work. For example, the internet product was very fast, and the product manager paid attention to the product schedule. There was almost no development gap, and sometimes they were asked to work overtime to rush the project. Moreover, while dealing with development tasks, the technology in the industry was also evolving quickly. The programmers had to find time to learn new technologies on their own, which would reduce their rest time.
In terms of work pressure, programmers had to deal with software failures, system crashes, and other unexpected situations, which would bring about greater psychological pressure. Long-term exposure to such high-pressure conditions was prone to anxiety, depression, and other psychological problems.
In terms of career development, 35 years old could be a hurdle. As they grew older, if they could not continue to learn new skills to adapt to changes, they might face the risk of being eliminated, and the employment situation would be more severe.
However, with the application of artificial intelligence technology, the workload of programmers in the future may decrease, and the career life cycle is expected to be extended.
" When a programmer meets a psychologist " is equally exciting. Everyone is welcome to click to read it!
Are programmers popular?Being a programmer was a very popular profession.
From the perspective of employment prospects, the IT industry was developing rapidly. New fields such as cloud computing and the Internet of Things had put forward new demands for software talents. In recent years, the demand for software talents in China had increased significantly. New industries such as Internet finance, Internet medical care, big data + cloud computing + artificial intelligence also had huge demands for IT talents. Many IT companies recruited talents through various means.
In terms of career development, programmers had many career paths. As long as they constantly learned new knowledge and new technologies to improve their own abilities, they would be able to adapt to the company's needs and have better career prospects.
In terms of benefits, the IT industry's salary level had always been at a high level, which was an advantage compared to other industries. Moreover, programmers also had better benefits such as flexible working hours.
However, programmers also faced some challenges, such as rapid technical updates and the need to constantly learn new knowledge and skills; high work pressure, which may require overtime when the project is urgent; project requirements may change frequently and need to be flexible; and long-term high-intensity work may also lead to job fatigue. At the same time, programmers working in first-tier cities also faced high living costs and fierce competition.
" When a programmer meets a psychologist " is equally exciting. Everyone is welcome to click to read it!
Are programmers fickle?You can't say that programmers are fickle or not. In terms of professional characteristics, most programmers were more focused. They were usually more focused, could withstand loneliness, and had a relatively narrow social circle. This personality trait made them less likely to be fickle. However, this was only a general trend. Everyone's personality was different. The entire community of programmers could not be simply defined as fickle or not fickle.
" When a programmer meets a psychologist " is equally exciting. Everyone is welcome to click to read it!