Your statement is very fair. However, even though there are definitely companies that don't value their programmers, I would be surprised if any of them actually said that in a job description.
How do you tell the difference between a company that does value their engineers from one that doesn't if both companies say the same thing? It is not an easy thing to do for sure, but generic uplifting statements don't solve that problem and don't add to job descriptions.
> How do you tell the difference between a company that does value their engineers from one that doesn't if both companies say the same thing?
You check if they put their money where their mouth is. Generally, a (well-funded) company that pays its (senior) engineers the same as or more than its executives values engineering. To name two, I've noticed both Google and IBM immediately matching friends' competing offers no questions asked. I know two other engineers whose base, cash salary was over USD 400,000 / year. Cash is very expensive to managers, and enormously expensive to startups (equity less so, but still quite a bit) so it is a reliable signal.
A subtler way might be to check the flavour of engineering projects, and particularly their time horizon. Bringing up Google again, one SDE mentioned using machine learning to automate managing their infrastructure. That's the kind of risky, ambitious, long term project you want to look for.
I personally take mentions of intangible things as negative signals from experience. Something along the lines of if someone is trying to reassure you about something, it means they think it's an issue.
The first had a small team (< 5) of also highly paid senior developers like him to build and maintain a set of systems. I wouldn't call it "manage" so much as "coordinate colleagues". The second was working alone.
In both cases the work was difficult to do, difficult to share across a team (solve a few hard problems well rather than cycle through hundreds of small JIRA tickets) and highly value adding for the company which is why they were willing to pay.
Ideally zero as they're on an "individual contributor" track where they're focused on engineering. They may have other people who they mentor but no direct reports.
How do you tell the difference? You interview with them and find out what they are willing to offer - the whole package including getting an idea of the human side.
There are many, many different roles in any large company. You can't please all of the people all of the time. I think the key is recognizing what people the company truly values. In some companies it's the software folks, in others it's sales, and in others it may even be front line support. If you are outside the in group, then it may still be a good company to work for as long as you a) recognize you are but a cog in the machine, and b) can be happy doing your non-glamorous work and going home to your (hopefully happy) life. Just make sure you are a well compensated cog.
I think it would be more informative to write a listing that characterizes what the team does in relation to the rest of the company. E.g. engineers are responsible for building new products, doing consulting work, executing internal IT projects etc.
Someone who has worked a couple places should be able to infer from that whether they are going to be part of a cost or profit center, and whether that environment is something they want.
That is a pretty basic piece of info that companies like to exclude. They tend to just post "competitive salary" when in fact a lot of the ones that state that pay well below market.
But it is competitive. It's a competition to pay the least amount possible for the best employee possible. Hopefully a competition against other potential employers, not against the employee, but it's really a bit of both since salaries are a negotiated thing.
I think the post makes some good points. Fluff and buzzword skill lists are useful for entry-level positions, so that a potential candidate who wants to get into a new career and knows little about it has at least some idea of what to look up. But for higher-level positions, the things that candidates want to know about the company and the things that the company wants to know about the candidate, are a bit different, and they both know more about the industry/career path. So fluff and buzzword skill lists are as ineffective in a job description as in a resume.
I remember a company I had a contract with sometimes (not always) posted jobs and advertised a pretty high salary. These salaries were actually competitive and not just in line with the competition. You can't imagine how easy it is to find high quality people that way. Go figure...
I started a CS degree in 2002. Back then there was a worry about programming jobs being around due to out sourcing. Fast forward a few years and it turned out that worry proved to be unnecessary. It turned out that communication was a critical part of software development and that is hard to do with time zone differences.
I think AI will also end up not being a huge concern, even in 20 years. Once you learn more about programming, you'll learn how truly far off we are. One AI researcher pointed out that worrying about something like that is like worrying about overcrowding on Mars when we haven't even sent a person there yet.
In the mean time, there is actually a lot of really boring, grinding, work in a programming job. Better AI will take that over more and more which leaves more time for programmers to work on more interesting things!
Were you involved in the hiring process much? If so, you could definitely do well as a recruiter. Hiring is a difficult process for many companies and having a recruiter with a strong engineering background helps create much better funnels for candidates. You will also have a much easier time getting responses from potential candidates because you will be able to say more interesting things about a company's tech in your cold emails instead of the generic copy/paste templates most engineers get in their inbox.
This is something I'm trying to learn how to do as well! Things that I'm in the middle of:
- Going to social/entrepreneur mixers and meeting people to talk about my site. The in person aspect of this is also a great way to get feedback on the idea.
- Providing frequent updates through my own contacts on social media.
- Contacting prominent bloggers in related topics about writing a guest blog post.
- If it's fitting, Hacker News!
I would love to hear what other people are doing besides spending a ton of money on ads.
It wasn't clear to me how to autoscale with DO either. That's why I ended up using Google Cloud Engine. It's not exactly cheaper than AWS, but the pricing model for discounts is WAY simpler at least. It also doesn't have the feature set AWS does, but it does have most of what you'll need like a load balancing service.
The pricing for GCE is the most convoluted I've ever worked with... And it's still 2-3 times more expensive than alternatives like DO or dedicated hosting.
A lot of the time when people want auto-scaling, the thing that strikes me is that most of them wouldn't have needed auto-scaling if they picked a cheaper provider to beging with. Often they could pick a dedicated provider, spin up 3 times as much capacity and still pay less.
Ditto. If you need to autoscale you outgrew DO. On top of DO prices not dropping in 4 uears, I see little reason to use them. GCE has $5 instances now with big boy features.
How do you tell the difference between a company that does value their engineers from one that doesn't if both companies say the same thing? It is not an easy thing to do for sure, but generic uplifting statements don't solve that problem and don't add to job descriptions.