I am pretty new to the field of software engineering and my journey as a developer has just begun. Yet in my short time, I have got to work with awesome developers both in open-source space and in my workplace.
Technical architecture and Reusability
Some of the best developers when working on any project care not just about getting and satisfying requirements. They care about how various technical architecture should be built and has a good grasp of various technologies required for the successful execution of any program. The problem of building and choosing technical architecture can’t be done by any automation software or any language models like GPT3 (which can write good code). This is why it’s so important to be good at it and build that skillset.
Another reason why technical architecture is important is to reduce technical debt(which is the amount of software written can be useless later because of changing project requirements). This is where we should try to build reusable software which can be built from the same project in very minimal time. So next time when you are building a project if you are planning to hard code some project-specific thing. Wait a minute and think about how you can improve it further, and avoid tightly coupled dependencies. One of the main things which are pushing companies to be overtaken by Amazons in the industry is legacy software.
Breadth wise knowledge of Technical stack
They care deeply about the various software required for building products. They have a fundamental knowledge of why each technical stack is required for various programming purposes. This knowledge helps in process of designing systems in a way better way of developing the product with good architecture and care about reusability.
Also, it’s very important to know the depth of the programming language. It is recommended to learn the language you use in work in-depth, to the very bottom in this advice by Georgely Orsz.
GET the Shit Done
I remember this quote hiring rounds from one of the prominent company which is a leading social media for working professionals with this as their main tagline:
Get the shit done💩
We as programmers need to realize and achieve the task required for the product. There may be a hard task that may seem tedious and difficult at first. But start working on it early and don’t make it slip deadlines. Any task is doable once we put the necessary effort into it.
[Image from Pexels]
Deep understanding of their programming stack
As we express our fluency with words or pronunciation when we are communicating, this is how we developers show our knowledge. If you have the required knowledge, it just shines brightly and everyone can easily understand it. That’s why it’s important to learn your programming stack thoroughly.
Most of the best folks I met are humble and are always willing to help. They have a life outside of this even though they care about their craft so much as to work even on weekends out of work to various side projects. They don’t brag about their achievements and like to help things to folks who are clear with it.
It’s also important to realize the review comments developers pass has nothing to do with you, but it is with your codebase and code quality. Personally, I need to work gaining more depth on python like the async function, generators, and revising the knowledge gained with the book High-performance Computing in practice in the coming days.
Also in the end of each weekly blog posts, I am going to start sharing three links for this week onwards.
Three Links for this week 👉:
- How Netflix recommendation engines work for Learning a Personalized home page
- Top 5 Lessons learned from being Netflix CEO - Reed Hastings
- A long chat about git and few of the common commands like commit, stash and their git mental model with Nabarun, Sayan and Jason