Ask HN: How does one stay geeky and secure good pay checks?
It's a global market place now, and as programmers we're often competing against not just Australia's best or (insert your country / local city / university)'s best, it's the world's best - and there are likely people in the world that are cheaper to hire than you that can do the same thing. This is what keeps us in our game, forces us to innovate, and makes this one of the most rapidly evolving industries in the world - so I think in an overall sense it's a great thing.
However, I've noticed that the natural inclination in working "for the man" is for people to want to get away from the tech work as fast as they can, to work their way through the ranks of management. Reasons often cited are that "tech work can get outsourced very easily", or that "it's just the thing to do when you want to get higher pay". But what if you really like the tech work?
In light of this, I'm really curious as to HN's opinion: what do you see as the key qualities, skills and attributes needed to keep your hands dirty (i.e. stay focussed on hands-on work, not managerial) and still remain extremely well-sought after and well paid?
5 comments
[ 1.7 ms ] story [ 15.7 ms ] threadProduce quality code you are proud of. Believe in what you are writing and why you are writing it.
Focus on making good decisions.
There may be a pain point in the transition, but I believe that domestic markets for developers will keep demand high and availability tight. Look at Chinese manufacturing as an example. China started out as the factory for the world but now the Chinese are looking more towards serving their domestic markets.
U.S. companies are seeing China as an opportunity for growth in sales rather than as a source for cheap labor. Today, developers are bringing in high paying gigs from the West and worrying about competition from developing nations. Tomorrow, developers are going to be competing for work originating from those same developing nations.
"and there are likely people in the world that are cheaper to hire than you that can do the same thing"
I don't think it's that simple. I'm a U.S. citizen living in the Philippines and I have found that live here isn't necessarily cheaper than anywhere else. In some cases things are more expensive. The reason people are living cheaper here isn't because of some national discount on everything for being a member of the "developing nation club," but rather it's because far more people are living in poverty. They have far lower expectations of "having stuff" than people in the U.S. have.
I have also found lately that as a Western developer, I'm not always the most expensive option. I have found that dev shops from India are often charging more than I do. In some cases it's because they have simply progressed to a point where they have been able to raise their rates by being better at selling, and in other cases it's because they don't have the same knowledge as I do in certain areas and aren't as accurate in their estimates.
A typical developer in the Philippines may start out cheap, but as he makes more money his expectations will rise. He will raise his rates as he is able to just like any other developer would. Eventually he is charging global market rates which is as much or more as you are charging. Again, the pain point is the period where that developer is competing with the same work you are competing for in your home country. Eventually he will be able to get those rates in the Philippines and you may be competing with him for work from his own country. The tables have turned!
Don't worry about the competition. Keep doing your thing and growing. As the world economy grows and technology progresses, there will be more opportunities. When this web thing got started, one guy would develop an entire site and he would call himeself a web master. Today it's getting more difficult to be the guy who can cover all bases. We can still do that for a simple site, but many of us are sticking to our strong points and letting other developers take care of the rest. These days I rarely work alone. This evolution creates new niche areas every day and in those areas you only have to run a little faster than the masses.
As for the other aspect of the question, I'm interested to hear your take on the 'geek vs management' aspect.
Where this comes from is here: I've worked alongside and known many developers who are slightly older workers (the 40+ mark), and they seem to be under this impression that they've lost their edge, and they aren't as good as they used to be when they were younger (my age), when they were mainframe guns.
Not sure why this is the case, and I'm fairly certain it's a mental thing more than anything else - others in their peer groups have either gone into management or in some way left the technical stuff behind, and they may feel as though they've lost out in terms of pay and opportunities - because they stayed tech. So the 'norm' for a lot of folks is to try and leave the tech game behind asap and move into management.
Do you think this is a simple case of getting stuck in a "my XYZ technology is the best for EVERYTHING" rut?
I operate on the principle that I need to go out and hustle to get what I want. I can't just sit around waiting for things to come to me (if I do that I will starve.) Tech skills are important here, but far more important is the ability to sell. Anyone can pick up the tech skills, but not everyone can sell. The top 5% engineers can probably sell solely through their tech skills, but the other 95% needs to play on different strengths.
So, maybe those guys just lost their hustle? Maybe they are in that certain spot where they can bitch but really they are content? I'm assuming that these guys are still getting paid pretty well even if they aren't making as much as the managers.