12 ms·
I'd recommend anyone looking for their first job out of university to consider strongly a job at a startup. Consider it a 'finishing school', where you'll have
by herge 11y ago
I'd recommend anyone looking for their first job out of university to consider strongly a job at a startup. Consider it a 'finishing school', where you'll have the highest chance to touch as many different technologies and tasks as possible (from system administration, to backend to frontend work), as opposed to the 'Big Company' where (especially for a first job) you'll be focused on one task.
The important thing is to leave after one year, no matter the compensation you are getting. Teams have a tendency to give the shittiest work to the most junior member, and there's very little inertia to replace that person if they are doing a stellar job at that shit work, but once you leave that startup with bankable experience under your belt, you'll have a much easier time interviewing and negotiating yourself a cushier position at either another startup or a big company.
Most big companies have a much better career 'ladder', where you'll be on a path to more interesting work once you've proven your worth, but I suspect you'd still be in a better position coming into the company one or two years in, rather than starting the treadmill at a lower salary/title.
- hodder 11y agoI'd recommend anyone looking for their first job out of university to consider strongly a job at a supercorp. Starting a start up will be much easier with a network of professionals, a pile of personal savings, and it is way easier to go from supercorp to startup than vice versa.
- jerf 11y agoI agree, but a year's a bit tight. You may want to give yourself an option of another 6-12 months, if your job is still rotating through things and changing enough that you're not pigeonholed yet. I'm not sure I could put into words why, but I'd look much more favorably on two years rather than one if I was looking at your future resume. Flip side, I'd also add an option at months three and six to ask myself whether I should just get out now and basically just not put it on my resume in the future. Interesting tech is interesting, but if the startup has pathological personnel or psychological problems, a year may be too long. I would suggest sticking out anything other than outright abuse for at least 3 months, though, since you do want to account for the fact that, ahem, a real job is not school and there are certain different expectations, regardless of where you work.
- jzwinck 11y ago> another 6-12 months, if your job is still rotating through things and changing enough that you're not pigeonholed yet This reads as if you're advocating against ever becoming an expert in anything. A few months is nothing--if the domain is difficult you're barely up to speed.
- jerf 11y agoIn the context we're discussing, we're explicitly taking a job to sample many things. Given the recent specialization in programming (web backend v. frontend, "mobile", devops, etc.), which is a continuing trend from previous decades, this seems sensible. I advocate for a T shape in skills, but before you pick what you go deep in, get somewhat established in the wide. Fresh out of school you just can't have the width yet to know what you want to and should go deep in yet, not even if you've had a job the whole time. Actually, I suppose I ought to raise that up as my true point: Go a bit wide before you select what to go deep in. Try not to just float into something without thought. Width should emphasize learning things that have demonstrated staying power, but you want to go deep on something that you expect has future power. It probably shouldn't be the current hottest fad tech, but the current hottest fad tech is probably at least in the area of a good future choice; it's more interesting why the current fad is a fad than the specific fad. If you do go for something that became super hot in the last 6 months to a year, try to figure out how to leverage that into learning about fundamentals even so. There's ways at both big companies and startups to succeed and fail by this metric. Of course, on the flip side, you don't have to get it perfectly correct. You can't go deep in everything all the time, but "pi-shaped" Π is feasible in addition to T-shaped too. (That's capital pi, for those who may not have seen it before.)
- s73v3r 11y agoWell remember, the pigeonholed part is in terms of the crap work. And I would say that in your first several years, you really don't want to be an "expert" in anything, cause you likely haven't had exposure to enough different things.
- defiblep 11y agoAlternative view: large corps often have graduate programs that will cycle you through various parts of the business (Cap Gem's is particularly good, IMO), and make a great platform for figuring out what you want to do next.
- jenshoop 11y agoYes, my sister did this -- she was a bright college grad and went through an associate program. Gave her a ton of exposure and helped her then find her niche and accelerate quickly. Let's be honest, know one in college knows what the ins and outs of "marketing" or "customer success" or "operations" looks like; my sister was surprised to find herself really interested in the niche field of fraud for a big travel booking company, and now she's able to parlay that expertise to get a higher salary and better job title elsewhere.
- jzwinck 11y agoI went about it the opposite way, and can definitely recommend that as well: big company first, then small. The big company experience shows you a ton of things, like how to interview, build, and deploy at scale. The small company can benefit from your ability to bring order to chaos, develop tools which are obvious in any big company but strangely missing from every small one, and more. Maybe it doesn't matter which one you start with, but you should give both a try at some point.
- untog 11y agoAgreed. Large companies have entire programs for the intake of new graduates. At a startup you're much more likely to be left to find your own way - which can be great, but can also be awful.
- snakka 11y agoI can also recommend this. The big company has a good starter program and lots of resources to learn and draw inspiration from. Also you get to touch such massive amounts of code and technologies. Of course it depends on the company, yet I think it will benefit you to switch job after a year.
- carlivar 11y agoWhat I like about "big before small" is that while you can't replicate what the big company does, you can selectively adopt certain "big company lessons, tools, processes" at a startup. At a big company, you also may gain a view into how scale works to understand where your changes at a startup will have the most bang for your buck.
- czbond 11y agoAgreed - I actually worked at a big 4 consulting firm - and it made me considerably more disciplined, and structured over my peers. I can solve problems more clearly, succinctly, and focus on critical path which comes from pressured client work.
- curun1r 11y agoThis sounds great when you envision that big company as Amazon, Google, Microsoft or Facebook. It sounds less so when you envision that company as Oracle, eBay, Yahoo! or SAP. Some large companies are mostly going to teach you politics, byzantine process and spending money as a means of scaling bad software. It's important to differentiate skills learned at big companies. Some are very useful, but others are coping mechanisms that have no place in a startup. Meanwhile, the scrappiness and well-rounded skill set learned at a startup will almost always have a place in larger businesses. My own personal recommendation for early career workers would be to prefer the cream-of-the-crop mid and large companies where you'll get useful experience you can't find anywhere else, then prefer startups and leave the slower-moving and more dysfunctional larger companies as a last resort.
- thebigcoguy 11y agoI recommend opposite as well but look for things like Leadership Development Programs in JPMC,WF,CITI etc... you get well rounded experience in 2/3 years and then you can decide to stick around or move.. Or work in big company and contribute to open source. There is lot to learn with big companies and if you can solve their problem you can solve small company problems as well but all small companies will get tired and have to behave like big corp to continue.. start up momentum is not sustainable beyond 3/4 years. Once you hit about 15000 people then you start having all kind of issues so better know how to manage that or seeing that will give you idea how to segment your company.
- devonkim 11y agoIt'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.
- superuser2 11y agoWhen you graduate from school with debt and no savings it is a good idea to maximize your initial salary. You can live on ~70% of it while building yourself a financial cushion for a while. Then, if you want to go to a startup later, you are in a better position to handle the risk of its failure and already used to spending less money. (Or you can stay with big companies and get a nice lifestyle boost after your emergency fund is established.)
- manyxcxi 11y agoI believe the inverse, I think most kids out of school should start at a (good) large company, they have the resources and framework to provide all kinds of career training you'd never get from startups or small companies. Mentors, leadership training, technical skills training, much bigger budgets, and a smaller group of tasks that someone is expected to perform. The pace is likely more deliberate, if not even boring, and that is good. As a newcomer you'll get a front row seat into what processes really work (code reviews, source control [yes, I still run into old/new people who don't use/believe in it], documentation, etc.) and you will be able to see how not having them can be detrimental in the future. Starting off in a startup will lead to little support and a cowboy attitude, what the world needs more of is people who know when to cowboy, and cowboy with purpose rather than using 'just get shit done' as an excuse for a lack of standards and quality.
- manyxcxi 11y agoAlso, this has been MY career experience to this date. As I now run my own tech companies and have been hiring technical people for the last 7 years, I have anecdotally found this to hold true. The early to mid-career types that have only ever been at tiny companies or startups are really good at having a breadth of experience and an ability to move fast. The spent all my career with big company types have usually been pretty deep at something (a language, framework, tech niche) and are very used to processes. They're typically slower and have a need to encumber small things with bloat (process, tech, etc). Marrying these people together on a team has yielded me fantastic results in nearly every case. The big enterprise people feel like they've been released from a cage, and the scrappy startup types seem a little less feral, while providing an infectious get shit done attitude.
- slewis 11y agoEveryone is either saying go to a big corp or go to a startup as your first job. What I usually tell new grads is: Get offers from both, and take the job that has the best potential person or people that you'll be able to learn from. There are a bunch of ways you can research this. Try asking people on the team to tell you who they've learned the most from in their career. Do not take a job where you'll be a lone wolf. As a new grad your goal should be to find great people to work with and learn from them. If you want to have a balanced career you should try both big corps and startups, but ordering doesn't matter.
- HeyLaughingBoy 11y agoDo not take a job where you'll be a lone wolf Good point. Fresh out of school I went to a tiny company of under 10 people. I had a great time and I was really impressed with the skills of the people I worked with. But within 18 months or so it became obvious that I had by far the most theoretical knowledge of anyone there and a lot of their approach was guesswork. In two years, I began to realize I was just as good an engineer as any of them, just inexperienced. I should probably have left after year three when the fun-factor was in sharp decline, but I stayed 5 more years, then took a job at at $BIGCO where my salary almost doubled instantly and projects were much, much bigger and infinitely more fun.
- jenshoop 11y ago^^ Great advice. I had a college student ask me for input on this very question this morning and my response was not to stress too much about finding "the best, most ultimate company ever to work for," but to find a position where you can learn a lot and develop skills you know you need from people willing to invest time in you. (As an aside, something like 70% of people say the most stressful part of their job is their boss. So if there are ways to screen for working with someone who is willing to take the time to cultivate you, amazing.) I think it's tough, especially for the generation of students graduating from college right now (millennials coached to believe they need to have a HUGE impact wherever they go and to believe that their contributions are insanely important), to understand that a first job is just a first step and is not career-defining, in my opinion. You can work somewhere, get some good experience, and then leverage that to get a job you're really excited about.
- lhorie 11y agoI recommend getting into a small company (i.e. 80-200 employees and profitable), if possible. At this size, you have opportunities to wear different hats and moving sideways, but you also get opportunities to see and participate in workforce scaling (helping form new processes, seeing new departments emerge, etc). The important thing is to be vocal about what you want to do. If you came in as a frontend dev want to do more about backend work, go find gossip about new projects and express your areas of interest to higher ups. If you want manage people, offer to improve the technical hiring test. If something is stupid (maybe there's burnout due to too much overtime, or a process is over-bureaucratic, or some aspect of development is too cowboy), be proactive and offer solutions. The unique thing about small companies is that there are enough people that narrowmindedness and complacency start to appear (and with it, process problems), which gives you plenty of opportunities to prove yourself with out-of-the-box thinking, but not enough bureaucracy to prevent you from being able to make changes.
- sutterbomb 11y agoThis was my experience and it has worked out really well for me. I've seen a few levels of scale (~120 people to start, ~1500 now), have worked in several different departments and touched nearly every area of the business. Incredible learning opportunities and ability to drive real change/results (which is a main argument for startups) while also having advantages of larger companies in terms of resources, training, pay etc.
- s3nnyy 11y agoI totally agree. This is the path I have taken and I do not look back. I rebuilt the recruiting process at my first IT-company after college. Now I started my own IT-recruiting agency in Zurich. If you look for a tech-job in the most liveable city in the world, check out my story "8 reasons why I moved to Switzerland to work in IT" on http://medium.com/@iwaninzurich/eight-reasons-why-i-moved-to-switzerland-to-work-in-it-c7ac18af4f90 http://medium.com/@iwaninzurich/eight-reasons-why-i-moved-to... or send me a mail to the mail-address in my HN-profile.
- vdnkh 11y ago> leave after one year I've been trying to leave my small company for a mid-sized startup in NYC (currently in NJ). Started just before my year mark. Almost every startup wanted someone with more experience under their belt. Of the few that were willing to take on someone with one year, I was still in competition with others who had much more experience. I got the same line over and over again - "strong technically, passionate, good fundamentals, but we need someone more experienced". So I waited a few months and tried again. It's gone a lot better so far (no offers yet) but I've had to shift my image from that of a young up-and-comer to one who knows how to Get Stuff Done. I stopped asking about mentorship opportunities. I still really want to work at a startup but I need a new job ASAP - I don't think I'll be attractive to them for a few more months at least.