Ask HN: What is the ideal company size where I can grow as a developer?
I am sure this is more art than science. But there has got to be a good general size.
I asked people on reddit what was the best way to grow as a dev and become better, and the overwhelming majority told me that working under good devs is the best and fastest way to do it. The question remains what size is ideal. Should I join a small startup or a medium sized company or a large one? What has been your experience? > I asked people on reddit what was the best way to grow as a dev and become better Depends upon how you define better. For many people that means becoming more employable, such as hot trends using a tool or framework. For me becoming better means writing original software solving challenging original problems. After interviewing exhaustively over the past year the aspect that determines better is not so much company size but quality of leadership. Most people in software have no idea what leadership looks like, which makes evaluating for strong leadership all but impossible. If you want to get better you need momma bird to kick you out of the nest so that you are forced to spread your wings. >Most people in software have no idea what leadership looks like, which makes evaluating for strong leadership all but impossible. what does it look like according to you? Not the OP but I think this depends to an extent on your personality. A surprisingly large number of people (especially devs) like being micro managed. If you're this type of person a good / strong leader is someone who will assign you small tasks, or allow you to pick from a short list, specify how the tasks should be carried out, and then gives honest, constructive feedback at very short intervals. (Squints in the direction of scrum)
Other people value autonomy and essentially want a leader who will present you with a large menu of tasks that you can complete in whatever way you see fit, enable you to learn, and buffer you from higher ups. Finally some people want a figurehead who sets a clear direction and trusts everyone to move towards that goal and self organise, and otherwise leaves you alone. Many people say they want this and then when given it run away screaming. This is quite insightful. I will have to reflect and figure out what I like, tho I have a general idea of the kind of dev I am As a CW2 in the army who is playing Major under unrealistic expectations leadership to me looks like trust and ownership. Let your people own their product and be unwavering in setting high expectations. Be firm. Don’t let whining and insecurity dictate your delivery. Company size is irrelevant. It is important that you have at least one colleague, preferably in "senior" role, who can do code reviews, give advice on solutions and just to chat about news and recent trends in industry. Having a rival developer with similar skill set also helps, but teamwork and communication is more important than working separately and trying to deliver more projects than other guy. Not being the only person that does what you do and most importantly, not being the smartest (experience) one doing it. I think the question should not be about company size. Size does not matter here. For huge companies (thousands of Engineers) your growth opportunities are much more based on what your team does, how crucial it is to the wider Company, how it does, what other engineers are there, turnover, etc. than the actual size of the company. I work for a huge company and a lot of developers are stuck in dead-ends and will only really be able to grow more if they change to other teams in the company. Also some teams are really nice but if you want to grow on those you basically have to hope a bus runs over the brilliant engineers occupying the best slots because they're not going anywhere ever. that you, that is insightful, especially that last part. Never thought about that it depends how you want to grow. if you want to be really deep on one subject, a larger company will get you that more easily since teams tend to be more siloed and focused. if you want to learn a breadth of things, jump from data to backend to frontend to devops, a smaller company will be better. if you want to grow in training/mentorship/leadership abilities, high growth small company will give more opportunities but nobody to help you, whereas a high growth team in a large company may be much better supported to train you how to mentor/lead(there should people that can mentor you). what should be the strategy early in my career? One.. 100... you grow in different areas depending on the company. One means many hats, 100 means many helpers. Where do you fit?