3 ms·
It's kind of difficult to have start-ups hire juniors because they desperately need people to be productive and so I'd caution that start-ups that accept junior
by devonkim 11y ago
It's kind of difficult to have start-ups hire juniors because they desperately need people to be productive and so I'd caution that start-ups that accept junior coders straight out of school may not be the kind of start-ups that give the kind of experience that's desirable even for a year.
Instead of recommending what people should go after college for their first job, I'll recommend what people should not do:
1. Work for a consulting / contracting company that has companies people don't like to work directly for. This is probably the worst arrangement of bureaucracy possible because you have the maximum possible layers of management overhead combined with business incentives to keep your compensation and impact upon the business as little as possible. Working for a web development shop that has big customers doesn't count here IMO because your work as an engineer is largely unchanged regardless of your customer paying you $2000 or $200k.
2. Work in corporate IT. These are high-turnover positions for many reasons. It seems like there's a lot of money in it, but it's mostly going to those that sell software to these places. People are miserable enough in F500 companies as it is, this is probably among the worst places for combination of stress, pay, and career mobility.
3. Work in a non-software company. A company whose business doesn't take its software seriously invariably treats its software and IT resources as cost centers meant to get maximum cost savings for as little money as possible via opex reduction and will, ironically, likely fail to make bigger expenditures required to keep costs (and really, wasting time) lower.
Being around non-motivated people in a demoralized environment is a great way to kill any starting career and learning what the signs of these organizational attributes are have important for avoiding really bad career moves.
- aantix 11y agoIf you take a startup job out of school, make sure that they embrace pair programming. Work for a Pivotal Labs. Work for an Andres Camacho. Work for a Chad Fowler. Or an Ernie Miller. Find the leaders that understand all programmers need training (especially around process and coding standards). Sell that on your passion and that you want to become good _quickly_.
- devonkim 11y agoPivotal is pretty awesome, definitely on my list of "seems cool, bro" companies. A lot of the criticisms I've heard hardly are a concern for me because everything I've known is that they're so busy coding they're hardly able to mess around taking submissions from others outside the company. And to be a little cheeky, Pivotal (compared to Pivotal Labs, not the same but still) is nowhere near a "start-up" company by most definitions. They're planning for an IPO and are pulling in many millions in revenue like Cloudera and HortonWorks, it's hardly possible to keep these plans from being kept under wraps.
- thedufer 11y agoPair programming is not for everyone. More generally, you want to be somewhere you can learn from senior folk. Pair programming and high quality code reviews are both great for this, and will appeal to different people.
- jtbigwoo 11y ago>> Work in a non-software company. A company whose business doesn't take its software seriously invariably treats its software and IT resources as cost centers meant to get maximum cost savings for as little money as possible via opex reduction and will, ironically, likely fail to make bigger expenditures required to keep costs (and really, wasting time) lower. To expand on this, there are some companies that seem like non-software companies, yet still treat software as a competitive advantage rather than a cost center. I worked for a big bank that did their best to stay six months to a year ahead of other banks on technology. The marketing folks were constantly coming to us and saying, "Give us cool features that we can sell." It was a fun place to work. I also worked for an insurance company that viewed technology as a necessary evil that should be as cheap as possible. The marketing folks there were constantly complaining about how much time and money the company was wasting on technology. (Curiously, they also complained that the company's technology offerings were hopelessly far behind its competitors.) It was a miserable experience. If you're looking for a job, ask questions about management support and budget priorities. If they're evasive or they say things like, "we're proud of how far we stretch our investment," it's not a good place to work. You can also ask how the company compares technically to its competitors. If they're evasive or talk about how they're trying to catch up, that's a bad sign, too.
- devonkim 11y agoThe more correct rule is that you should try to find companies that have closely aligned business and technology objectives (which I haven't found outside of finance and the usual SV companies in the F500), but I have my doubts even that is the case because I'm working for a large organization that meets this criteria and I'd never think of advising a young, ambitious recent graduate to even reply to a recruiter for this place given the horrifically bad budget situation. Just because business leaders want something and try in earnest to plan for it doesn't mean much if they don't have the resources and momentum to execute. A good example of what I mean are large, innovation-less companies with "start-up in a large company" efforts to bring themselves some relevance that almost always become the worst of large company inertia / legacy with the fiscal and market position disadvantages of start-ups. I've been through at least 4 of these efforts with varying degrees of "success." And while they're a large part of my career and I want to believe it can happen, I have no evidence of this working out well and am convinced it's a rather high risk to take with disproportionate upside.
- henrik_w 11y agoStrongly agree on point 3. On top of my list of requirements for places to work is "the product is software", just before "great colleagues". http://henrikwarne.com/2013/03/26/what-do-programmers-want/ http://henrikwarne.com/2013/03/26/what-do-programmers-want/