<story><title>Letter To A Young Programmer Considering A Startup</title><url>http://al3x.net/2013/05/23/letter-to-a-young-programmer.html</url></story><parent_chain><item><author>dustingetz</author><text>one point al3x didn&apos;t talk to: not all startups will teach you to be an awesome engineer. If a startup is really hiring the best of best, a less experienced programmer is not likely to make the cut. Ever look at your code from 6 months, a year, 5 years ago? and how bad it is? Many tech startups don&apos;t have time for that, the quality of your work can make or break a startup. Elite startups want &quot;ex-googlers&quot;.&lt;p&gt;So if you want to get good, you need to work with people that are better than you, who have already learned from their mistakes so you don&apos;t have to. Find the strongest shop &lt;i&gt;that will hire you&lt;/i&gt;. It will not be the best shop. It probably won&apos;t be an elite startup. But more mature companies can afford to pay for your learning curve. You also will probably make more money, enough to pay off your student debt and save up to bootstrap when you&apos;re more experienced.</text></item></parent_chain><comment><author>jcampbell1</author><text>I run a bootstrapped company and we hire the cheapest engineers we can find.  I interview for competence in the one thing they understand, and then just how fast they learn.  I cannot overstate the number of people out there that are incredibly smart, but can&apos;t describe basic information like how the HTTP protocol works.  It is completely baffling.  These people can be explained how the protocol works in 10 minutes, and spend 8 hours at home looking at the Chrome web inspector, and completely grock the protocol.  I find myself a seed planter.  These people are smart enough to figure it out, but for some reason they don&apos;t do it without a 10 minute verbal overview.&lt;p&gt;My advice to any to young person is to judge the job by the quality of the mentor.  Smart people feel ecstasy when learning new things, and if you have anxiety about your job, then you are likely in the wrong position.</text></comment>
<story><title>Letter To A Young Programmer Considering A Startup</title><url>http://al3x.net/2013/05/23/letter-to-a-young-programmer.html</url></story><parent_chain><item><author>dustingetz</author><text>one point al3x didn&apos;t talk to: not all startups will teach you to be an awesome engineer. If a startup is really hiring the best of best, a less experienced programmer is not likely to make the cut. Ever look at your code from 6 months, a year, 5 years ago? and how bad it is? Many tech startups don&apos;t have time for that, the quality of your work can make or break a startup. Elite startups want &quot;ex-googlers&quot;.&lt;p&gt;So if you want to get good, you need to work with people that are better than you, who have already learned from their mistakes so you don&apos;t have to. Find the strongest shop &lt;i&gt;that will hire you&lt;/i&gt;. It will not be the best shop. It probably won&apos;t be an elite startup. But more mature companies can afford to pay for your learning curve. You also will probably make more money, enough to pay off your student debt and save up to bootstrap when you&apos;re more experienced.</text></item></parent_chain><comment><author>larsberg</author><text>Great point. A good rule of thumb in jobs is that if you are the undisputed top &amp;#60;X&amp;#62;, make sure that you are being compensated very, very well. Because you just sold out. It is quite hard to reach new levels of expertise without explicit, task-related mentoring, and if you&apos;re trading off that kind of growth, do it explicitly.&lt;p&gt;Back when I was a manager, I used to find it somewhat depressing to interview people who had gone to startups or non-tech firms for 5-10 years, reached &quot;senior developer&quot; or &quot;architect&quot; roles, and whose levels of expertise were indistinguishable from the median recent stanford grad. Certainly, they knew more &quot;things&quot; but had failed to grow in either scope or depth.</text></comment>