its gotta be more than grindin LC. should i focus on certs? just studying more in my off time? what do you think?
No, certs, in no way achieve that goal ...
What matters is your TC. The higher the TC, the better the engineer you are.
Engineers that are better have solid communication skills, work well with others, are reliable and give good timeline estimates. Given your project/team doesn’t have to always be on survival mode and actually has a future one can relax and focus on these things. Be smart enough to not work in a cost center role for too long if you want growth. A lot different than what most people here are led to believe. Being well liked and a team player matters more than being an asshole know it all. Notice I said nothing about certs
What do you mean by a cost center role? Thanks for the insight btw!
Roles where the work output/contributions do not generate revenue. Ops/support work are some examples. In these roles you are said to be doing your job if everything is kept up and running. Which is fine but think of it this way. If you owned the business would you pay the people who bring in money more or people who don’t bring in money. Simple decision to make, nothing’s fair so be prepared for this reality early rather than later
Certs to me are a red flag. Don’t do certs! Be the person who gets stuff into prod, no matter the obstacles or difficulties faced. That is the sign of a good developer. Communication (stakeholder management) and attention to detail (foreseeing and preventing bugs / performance issues) will also help a lot.
One thing not mentioned yet. Be the one who tackles the hard problems that no one else wants to. When solving problems don't just scratch the service but go deeper and understand the inner workings, if only just to satisfy your own curiosity.
Reading famous books about clean code, design patterns, architectures etc I guess
Which do you recommend?
Interest in what you do Communication Abstract and critical thinkinking In that order and yes, communication is more important than critical thinking, because if you can't rationalize your thoughts with the group then your ideas really don't go anywhere or you destroy the morale of everyone else if you are in charge. But beyond that interest in what you do is the difference between a good developer and and a great developer. Someone trying to figure out all the knobs and what they do is more important than someone who can throw some rote code out and does what it takes to just get it done.
A great software engineer can do two things really well. 1) they can consistently build features that are tied to revenue growth and push them into production. 2) they understand systems and the SRE work so they can maintain and scale what they build. If you can do those two things really well you’ll be a 10x engineer.
I used to think exactly like you OP, what to learn and what to improve to become best. After analysing and talking to multiple people who I think are best, there is no one clear answer. But it’s not clearly just your technical skills. All good/best engineers are good in communication, writing big documents really well in a manner that’s enjoyable to read. Create solutions instead of just coding for something. Based on my experience, I can give your these tips - try to identify big problems or big areas that can be improved. Put some real thought on them and come up with multiple solutions, not just thinking in your mind, but put them in a document. It’s a design doc. Words has no say in software industry, everyone can talk bullshit. Even great ideas will fade away if you just talk. But if you put something on paper, I mean on a document, it’s like a well fed thought, you need to give a lot of thought and you make sure you do your research before writing that doc. Look at some existing design docs written by others. This will improve your overall communication and thinking ability and research on new tools and practices. - keep listening to podcasts and watch conferences. Having a broad idea of technology is always makes you better than someone who concentrated on learning just technologies. Learn how others are using technologies and what kinds of problems they are solving and how. - keep writing some good articles on medium or your own blog. - keep coding and looking at beautiful code written by others. - keep attending meet-ups and meet new folks in your similar domain. Talking to them and learning how and what they are doing will be always good. - talk to multiple people from other groups like QA, dev, project management and keep learning about what they do. It’s not worth reading or watching videos about these. Talk to people, you get more knowledge. - read some great books like clean code, clean architecture, CI/CD by Jeff Humble, monitoring by google(I kinda sensed that you are in devops/sre)
I took a screenshot of this entire comment. Thank you! I appreciate this awesome advice!!
Best answer here
Working Parents
Yesterday
989
What do you think is wrong with a kid who got rejected by 9 colleges?
India
Yesterday
1038
Modi is a legend, will be remembered for centuries to come
Tech Industry
Yesterday
2319
The end of Backdoor Roth?!
Today I Learned
12h
463
How many books do you usually read in a year?
Working Parents
14h
1126
Closed now - thank you all
1. no one here thinks grinding LC has anything to do with being a good engineer. 2. certs are useless.
Even if I’m looking for a devops / SRE role? I was thinking a docker or kubernetes cert. should I focus on projects instead?
The fuck is docker, kubernetes cert? They are like two days study material