|
|
|
|
|
by n_time
1064 days ago
|
|
You sound like a very competitive person. You might want to consider that a lot of software development is actually the navigation of socio-technical systems. Heavy emphasis on the socio. Your competitive drive isn't bad, but it might lead you to local optima in your career in the long-run. How do you get things done in a larger organization? At AWS it's solved by having APIs and documentation for everything. This leads to a janky UI, a lot of redundancy in their systems, and a pretty bad work environment from what I hear. In a lot of technical organizations, this problem is solved instead informally through relationships between members of the organization. You want to get something done outside of your constrained contexts? You'll probably need some relationships. Getting a lot of cards done is great, but if you're pushing too hard all the time you're going to sour those relationships. What I'm saying boils down to this: being a developer in a large organization is about 1-3 parts coding to 7-9 parts communication and relationships. Further, if you spend time communicating you can often realize that the feature you're implementing was already implemented two years ago and there's just a regression that's caused the line of code to no longer be executed. You can say fuck it to the communications with your peers if you'd like. However, keep in mind that most of your jobs as you become senior are going to come from referrals from former colleagues. Your boss right now isn't going to help you get your next job–the people sitting around you might. Consider reading [non-violent communication](https://www.amazon.com/Nonviolent-Communication-Language-Lif...). |
|