Every year, millions of young programmers join the software industry. They had learned programming in school, but knew nothing about the realities of the industry. Patrick McKenzie, the owner of a small software company in the United States, wrote a long article about the realities of the industry.
Ninety percent of the programming comes from in-house software
Computer science students might get the impression that most programmers write software that is publicly available or general purpose software.
That’s not true. Most programmers actually write undisclosed in-house software, such as software to track expenses, optimize shipping costs, help with bookkeeping, design new parts, calculate policy prices, identify malicious orders, and so on. Various commercial companies develop in-house software to solve their own problems. Most of the demand for programmers in the market comes from this, and very few programmers write software directly for external customers.
Internal software development is often tedious and tiresome. Because of their low technical complexity, very conservative technical decisions, small budgets, and lack of long-term thinking. But that’s what most of the world’s programming does.
2. You are hired to make profits, not to program
The only thing business companies care about most, or care about most, is increasing revenues and reducing costs. So what they really need is not programmers, but people who can help them increase revenue and reduce costs.
Developing beautiful software, solving technical problems, and writing bug-free code are not the goals of commercial companies. They hire you to help them with a project that will increase revenue and reduce costs, not so you can pursue your own software achievements.
Your only value to the company is how much you can add revenue and reduce costs.
3. Don’t call yourself a coder
Many company managers do not understand computers, in their mind, programmers are a group of high-cost labor, can only do some difficult things on a complex machine.
If you call yourself a coder, the first thing some managers will think of when their company needs to cut costs is to fire you because of your high salary. There is a company called Salesforce whose slogan is “no software.” This means that if managers buy their service, they don’t need other software to manage their sales — that is, they don’t need to hire their own programmers.
Instead, you should describe yourself as someone who is involved in increasing revenue and reducing costs, such as “developer of PRODUCT xx” or “improver.” One Google Adsense programmer’s bio reads, “ninety-seven percent of Google’s revenue is related to my code.”
Don’t limit yourself
Young students often ask, which language or platform should I choose? Is Java easier to find a job than.NET?
There is no need to overemphasize one language or platform. If you define yourself as a Java or.NET programmer, you’ve already lost, because first of all you shouldn’t call yourself a programmer (see reason above), and second of all this qualification automatically excludes you from most programming jobs in the world.
In real life, it only takes a few weeks to learn a new language, and then another six months to a year to become an expert. Back then, no one cared what language you used to speak.
Talented programmers are rare, but there are many, many jobs for talented programmers, and in most situations the demand far outstrips the supply. This means that even if you’re not a talented programmer, if you’re a good engineer, recruiters will hire you right away because they know the chances of getting a talented programmer are slim. (To repeat, a “good engineer” means you have a track record of increasing revenue and cutting costs.)
In some companies, the hr department will filter resumes based on certain keywords, such as Java or.NET. It’s not worth going to, but if you really want to do it, it’s easy: Invest a few nights and weekends in trying to use that key word in your current project, and then add it to your resume.
Five, how to improve the negotiating ability of job hunting?
(1) Remember that you are not applying for a job. You are not demonstrating your programming skills. You are selling a solution to a business problem (increasing revenue or reducing costs).
(2) During the interview, be confident and have an equal conversation. You want a mutually beneficial contract, and don’t say Yes every time they ask.
(3) An employer may ask “What was your last salary” when they are really saying “give me a reason to keep your pay down”. You have to decide how to answer the question appropriately.
(4) Ask for a counteroffer. Not just money, but other things you care about. If you can’t ask for more money, try asking for more vacation time.
(5) Start salary discussions only after you have been offered the job. Because at that point, they’ve already invested a lot of time and money in you, and there are costs, and they may decide that some minor issue is no longer worth bothering with, like a salary increase of a few thousand dollars a year.
6. Are start-up companies suitable for fresh graduates?
If you join a startup right out of college, the most likely outcome is that you work really hard for the next few years, and then the company fails miserably, you lose your job, and you have to go work for another startup.
If you really want to work for a startup, you should first work for a big company for two years, save some money, gain some experience, and then carefully select a startup to pursue your dream.
When you work at a startup, typically, you’re dealing with entrepreneurs. Most of them won’t be able to hire you after two years; At a big company, you’ll be meeting people from other big companies, many of whom will be able to hire you or hook you up with jobs.
Communication skills are the most important professional skills
As mentioned earlier, engineers are not hired because they can program, but because they can create business value. So, you have to convince people that you can create value, which is the most important thing that will help you get a job. This ability is not really tied to how much value you can actually create.
Some of the best programmers I know are terrible at presentation. As a result, others either don’t want to work with them or underestimate their value. On the other hand, if you appear to be good at programming and are articulate, that’s how people will perceive you.
The original:
www.kalzumeus.com/2011/10/28/…
Translation:
www.ruanyifeng.com/blog/2011/1…
Follow public accounts
【 Pegasus Club 】
▼
Weixin.qq.com/r/bThZQajE7… (Qr code automatic recognition)
Pegasus will
AI artificial intelligence/big data/technology management and other personnel learning exchange park
Previous welfare concerns about the pegasus public number, reply to the corresponding keywords package download learning materials; Reply “join the group”, join the Pegasus AI, big data, project manager learning group, and grow together with excellent people!
Microsoft Danniu artificial intelligence series of lessons
(Scan or subscribe)
M.qlchat.com/live/channe… (Qr code automatic recognition)
From beginning to research, the 10 most Readable books in the field of artificial intelligence
RSVP number “2” machine learning & Data Science must-read classic book with resource pack!
Into AI & ML: Learning machine Learning from Basic Statistics (PDF download)
Answer the number “4” to learn about ARTIFICIAL intelligence, 30 books should not be missed (with electronic PDF download)
Answer number “6” AI AI: 54 Industry Blockbuster Reports
Reply number “12”
Small white | Python + + machine learning Matlab neural network theory + practice + + + depth video + courseware + source code, download attached!
Reply number “14” small white | machine learning and deep learning required books + machine learning field video/PPT + large data analysis books recommend!
526 Industry reports + White papers: AI, Artificial intelligence, robotics, smart mobility, smart home, Internet of Things, VR/AR, blockchain, etc. (download)
Reply number “19” 800G ARTIFICIAL intelligence learning materials :AI ebook +Python language introduction + tutorial + machine learning and other limited time free access!
Machine learning: How to go from beginner to Never Giving up? (With benefits)
Respond to digital “24” flash download | 132 g programming data: Python, JAVA, C, C + +, robot programming, PLC, entry to the proficient in ~
Reply number “25” limited resources | 177 g Python/machine learning/TensorFlow video/deep learning algorithm, introduction to cover/intermediate/project each stage!
Reply number “26” introduction to artificial intelligence book list recommended, learn AI please collect well (attached PDF download)
Reply | digital “27” Wu En of Stanford CS230 deep learning course a full range of information release (download)
Reply digital “30” receive | 100 + artificial intelligence study, deep learning, machine learning, big data, algorithms such as data, decisive collection!
FMI Artificial Intelligence and Big Data Summit Guest Speech PPT
Top 10 AI Jianghu Fields
Machine Learning Practical Experience Guide
More than 100 Papers on deep Learning
Top ten Classic Algorithms of Data Mining
6.10 Ele. me & Pegasus Project Management Practice PPT