I don't think this is true. Getting better at a thing has diminishing - often severely diminishing returns. Giving up being top 23% in programming in exchange for being top 25% in programming + top 25% in accounting doesn't seem like it would be much of a career liability.
> Employers want specialists, and pay for them. If your CV is two or three distinct things (I don't mean a selection of languages, or front and back end dev here, I mean distinct skills like say programming and accountancy) it's very unlikely to get you a better salary.
You're probably not going to get a better salary working for a company that only values one skill. You have to pick your employer more carefully. That being said, there are tons of software jobs in the banking/accounting sector ranging from product development to consulting. I'm sure that being an excellent programmer and an excellent accountant could make you much more money than just one without the other at some of those companies.
Another question: as https://news.ycombinator.com/item?id=18484883 says, would it help to rewrite your CV to highlight what the job is looking for? Again, if it's an engineering job, talk about your eng accomplishments in great detail, with perhaps only a bullet point for other skills at the bottom of the resume?
As https://www.kalzumeus.com/2012/01/23/salary-negotiation/ says:
> Did the solicitation for the job say “We are seeking someone with strong skills at scaling traffic in a fast-moving environment”? Pick out the key words. Scaling traffic. Fast-moving environment. “Scaling traffic” doesn’t sound like how I’d phrase it if I were writing or speaking for myself, but if you’ve just described your need to me as scaling traffic, by golly I will tell you how great I am at scaling traffic.
This really depends on your employer and your definition of specialist. There are jobs where following a very straight career path would be a disadvantage: you might be perceived as a boring candidate who would potentially struggle if given work outside their domain. I think it's fair to say that, generally, breadth is valued more at smaller companies where people have to multi-task.
In academia it's much easier to do well as an inter-disciplinary researcher than it is to try and be the best in a single field. The obvious killer combo right now is machine learning for X, where X is a field which does not have a strong grounding in computer science. Hacker news gives a very skewed view on the world, as if everyone is up to date with the latest developments in deep learning. In reality, most people in academia are pretty unaware of what's possible, or don't have the technical skills (or grad students with them) to make use of it. This is currently true even for maths-heavy fields like physics, which you may find surprising - I certainly do. Now is a really good time to get on the ladder.
You also need to consider job satisfaction. People who are pretty good at several things may be bored with a single track career, and no amount of money will make up for that.
IME, not at all during the hiring process. And only rarely later.
Your comment below gives one side, where companies want a specific thing and don't want to think beyond that. There is another side to that, where the company can't afford a dedicated engineer for X, and so being able to do some of that work is very valuable. I think this is probably more common in hardware startups more than anywhere else.
I've worked at companies (< 10 people) where we absolutely wanted different (relevant) skills, because we needed people to be reasonably autonomous in carrying out tasks. For example, we wanted people who had optical lab experience, could program and if you had mechanical engineering that was a big bonus.
My suggestion was that the odds of needing multiple skills is larger at a 5 person early stage startup than an established 200 person company. The larger you go, the more you're at the whim of HR screening. There may well have a long list of requirements, but on the job you're probably going to be more specialised.
IMHO, this is mostly due to the nature of the industry I am in (software). Hiring engineers is difficult, and only done when there are specific needs to fill - particularly at small companies, that can't afford to think too far ahead, or afield.
Agreed, although I can also detect a lot of negativity from an older generation of academics in fields that classically border machine learning very closely. One remark I found funny (paraphrasing) is: "Total learning is a constant, and it consists of the sum of the machine's and the person's learning.. the deeper the learning of the machine.. the shallower the learning of the person". But I don't really have a stake in this and am not in much of a position to judge.
- philosopher (Bachelor's degree)
- sociologist (Master's degree with thesis on criminology)
- international relations student (another bachelor's dg in 2 years)
- C# Programmer (by a workshop)
- Java Programmer (by profession)
- Python programmer / Data scientist (by self education)
- Data Analyst with SQL(workshop & profession)
and the HR guys around here just think "I am not focused enough" and don't even get into the technical phase of the interview most of the time. Sadly, I think, if I could get into that part I'd ace it. Right now I am super demotivated though.
Maybe this is a regional thing, I can not comment about how my resumé would look to an international company but the question of "what does it mean to be an employable person" is a valid one and sadly can be answered with hyperspecialization and/or knowing the right people working in the company.
Most places want cogs. If you're too broad or have too many teeth, you're not going to fit in with the other cogs.
But you may be pitching at the wrong level. Developer jobs may not be the right niche for someone with a broad spectrum of skills. (By which I mean genuinely broad multidisciplinary professional skills and interests, not [three popular coding languages with some backend experience].)
Management and strategy may be a better fit.
https://www.spotifyjobs.com/job/senior-ad-tech-engineer-back...
In addition to the standard Backend swe callouts the job desires ad-tech knowledge and advertising business knowledge. I'd be willing to bet they have a strong inclination towards anyone who's in the top 25% of both, but would consider cross-training for a top 1% in either.
As you go up the IC ladder the demand for cross-functional skills rises.
Are you also good in your primary skill? Is it like 100% of engineering (say) + 20% of UX design, or 60% each of engineering and UX design? In the former case, one will clear the bar for an engineer job post, with your UX design skills helping to position you above other qualified engineers. In the latter case, you may be judged unqualified and rejected.
And what do you think about related skills, like UX design or marketing in addition to programming.
I'm a generalist, but for each application I have to mold it in to a fitting expertise. Even when applying for product and project management.
even within companies, no matter what you actually do, your job title will haunt you. doing 90% frontend dev and being the designer, doing 60% product and being the project manager.
that it doesn't pay now is only because not enough people are aware of the benefits.
it's similar to the problem of hiring for a specific tools as opposed to hiring people who are good at learning new tools. if the new tools are similar to the ones they already know they will be productive in no time.
greetings, eMBee.
After you learn how to program, you will need to learn what to program and that requires more diverse skills and knowledge to make those decisions.
Things like "what's best practice" when I've just exhaustively explained how we're in the precise corner case to which the normal best practice doesn't apply are, for me, the hallmark of PM ideas. Deep technical insight or domain knowledge are not.
Employers want specialists, and pay for them. If your CV is two or three distinct things (I don't mean a selection of languages, or front and back end dev here, I mean distinct skills like say programming and accountancy) it's very unlikely to get you a better salary.
In fact if you've diverged from a straight specialism throughout your career it's probable you'll be punished with a lower salary, and problems getting hired in the first place. Expect a lot of challenging interview questions as to why you haven't followed a straight line from junior, through senior into project management (which of course is a different skill, making this even more inconsistent).
I'm sure those same disparate skills could be hugely useful if you're starting a business or startup, but for employment it's likely to make life harder, even though many employers would benefit just as much from your increased breadth of perspective.
So outside a few rare employers, and a few lucky applicants, I don't think there's much out there for generalists, sadly.