It&#x27;s kind of difficult to have start-ups hire juniors because they desperately need people to be productive and so I&#x27;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&#x27;s desirable even for a year.<p>Instead of recommending what people should go after college for their first job, I&#x27;ll recommend what people should <i>not</i> do:<p>1. Work for a consulting &#x2F; contracting company that has companies people don&#x27;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&#x27;t count here IMO because your work as an engineer is largely unchanged regardless of your customer paying you $2000 or $200k.<p>2. Work in corporate IT. These are high-turnover positions for many reasons. It seems like there&#x27;s a lot of money in it, but it&#x27;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.<p>3. Work in a non-software company. A company whose business doesn&#x27;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.<p>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.