5 ms·
That's fair, but if you code for a living and growing is important for your, you should carefully evaluate where you work. Sometimes people dismiss certain com
by angarg12 5y ago
That's fair, but if you code for a living and growing is important for your, you should carefully evaluate where you work.
Sometimes people dismiss certain companies. I remember my first boss dissing Google saying things like "how good can Google really be?". Now that I've experience it, I can say that career growth and learning between companies are not measure in percentage points or multiples, but orders of magnitude. The reason is simple: in some companies you might not learn anything or even pick up bad habits, while others will accelerate your growth.
I spent the first 7 years of my career in a low performing organization. A few year later I joined a Big Tech company, and in 1 year I grew more than those 7 years combined.
- jackblemming 5y agoGoogle is a great place to grow. Just do the complete opposite of every framework Google comes out with (and then usually kills a few years later) and you'll be a star programmer.
- philipphutterer 5y agoWhat do you think is the reason for that "orders of magnitude" in growth? Can one experience similar without working for a big tech? Is it a mental thing or rather the working environment with many highly qualified people around?
- Jensson 5y agoGoogle give you a lot of responsibility, even as a junior. When a typical agile shop gives you tasks expected to take hours, Google gives you projects expected to take weeks and tell you to drive that project. And as you grow they give you bigger and bigger tasks. So then if you need to meet someone, you contact them and schedule that meeting. If the project requires custom designs, you write that design doc. And if they add more engineers to the project, it is your job to get them up to speed and assign parts of the project to them so they can be productive. Basically, your job is to ensure things gets done.
- angarg12 5y agoMindset is necessary but not sufficient. Some environments encourage learning, while others discourage it. That's the trick behind the "orders of magnitude" sleight of hand. Is not that you learn 100 times faster in some companies (whatever that even means), but that in some places you don't learn anything at all, and in others you pick up bad habits that could count as negative learning. For example one of my previous companies was very top down, siloed and hierarchical. One time I went to talk with a PM from a different team about the prioritization of certain customer features, and my boss got really pissed off. He told me I should never talk directly with anyone and should always communicate via him. This was also the kind of place where new ideas were shut down and opposing the main point of view could get you in trouble. What about the opposite, people who have the environment but not the mindset? Some might coast years in big tech actively refusing to learn, but it is rare. Most often they will be put in situations that make them uncomfortable and will choose to leave (reorgs are common). Other times their performance will simply suffer if they aren't able to keep up with the team.
- DavidSharff 5y agoAre you able to compare the experience of being at a Big Tech company against a very small team with wide responsibilities? I'm in my 11th year as a developer and left a pure tech company 6 years ago where I was surrounded by other engineers for a small one where I've been 1 of a 2 until this past year (I now lead a team of 3 stateside and nominally 3 more overseas). Note for traditional startup folks: the lack of team growth may seem like an obvious signal of low performance. Fwiw - we're entirely self-funded and our revenue has grown by nearly 5x and total staff by 3-4x during that time. From a career/skill growth perspective, I often wonder how being on my little island nets out against joining a larger elite team. I've no doubt developed idiosyncrasies but I've also directly or collaboratively coded, designed, deployed, and promoted every piece of software, including several web products from scratch, that have been foundational to our success since the first year the company existed. I really have no idea how to compare that experience with being a cog in a massive machine but surrounded by brilliant work and brilliant people I could learn from.
- arinlen 5y ago> Are you able to compare the experience of being at a Big Tech company compared to a very small team with wide responsibilities? Most "Big Tech companies" are already structured internally as small teams with wide responsibilities, which imclude owning multiple projects and with it everything required to develop and deploy them. If anything, "Big Tech companies" have enough resources available to allow developers to work without bothering with distractions.
- DavidSharff 5y agoI think it's a good point that there are many more domains within large organizations than one might expect from the outside. However, people are undoubtedly in more specialized roles and teams on the whole. I'm merely trying to explore the differences in growth as a developer between the two extremes. While I don't think as many people who build React interfaces at Facebook are also spending days creating Postgres schema diagrams and responding to mission criticial DevOps failures, I certainly grant that the small team varied project approach might be more similar than I realize. In that case or either way, the most impactful difference in how personal growth is impacted may be the surrounding ecosystem and knowledge base. In one scenario you are flush with existing infrastructure and the thoughtful people who designed or maintain it. This can focus your work as you mentioned and is also a great learning environment. While on the other side you are working without a safety net slogging your way through creating everything* from scratch. This forces you to learn new skills in unfamiliar areas and managing all sorts of tradeoffs autonomously (there could be literally no one else to motivate you or to ask a question aside from your search bar). * Infrastructure, tools, processes, etc. I'm not talking about reinventing the wheel though you are free to do so for your own pleasure or peril.