Being a developer is an awesome experience – trust us. You are an architect and the builder of your dreams. A developer shapes the way the requirements get translated into a working product which customers will enjoy using it. Most developers are passionate in the work they do and love doing programming. It is in their DNA, they are always thinking about logic even outside the working hours. In our opinion, developers are highly creative seeing ways to do things which others don’t see them coming they way. There are tons of other traits part of developers that we can go on ranting, as we get into the meat of this blog, we want to recognize developers are fast learners. They are always faced by challenges of learning a new software every 5-to-6 years as the technology domain transitions.
With all these traits mentioned, there are a number of things we wish developers took a serious note on. We are calling-out 5 different traits we wish developers took a keen note.
I refuse to comment
Developers are hardcore logical in their thought process. As the requirements are ironed-out, the natural tendency for any developer is to think about it logically for all programming problems. Even as the requirements are said, they are thinking how they are going to code and what logic will fit this current requirement. Most of the developers jump into solution before thinking before the first line of code.
What we request here all developers is to listen to the requirement. More importantly from an maintenance point of you run the extra 10% to make the job executed from just fine to an fantastic code block by commenting. We have seen customer centric code where writing a comment is seen as an afterthought rather than a proactive practice.
Not writing modular code
When we are in a flow, the code just starts to flow. Writing a data centric code is interesting, be it from set based operations, looping through code, recursive queries, creating temp tables and more are the various options that goes into the mind.
For complex logics, we have seen developers write code that spans for more than 5k for a single stored procedures. Once analyzed this can be brought down into smaller pieces. Making modular code helps in easy maintainability and more importantly the code starts to execute faster too. Start thinking in modular approach next time you write any code.
Deploy and fight the battle
Startups and small businesses have this mental battle to put the code in the field or to customers and then battle it out with restrictions. As a developer, learn to say no if the code is not complete. Don’t try to test code on customers and create dissatisfaction.
Developers have a tendency to take more than what is expected in the given timeframe creating a huge scope creep for the deliverable. Some camouflage it under the name of Agile programming. But know your limits as a developer. Irrespective of the code that needs to be written, know what the current scope for delivery is for the milestone before taking on more code.
Planning based on your knowledge
The corollary is also true in some cases. As developers don’t try to be adventurous without analyzing the code. Don’t keep switching though different technologies as part of experiment without knowing the use case for the technology.
As we have said before, developers go through a learning journey which are important to every single person. As a developer of this era, we highly recommend you to be flexible in your approach to learn something new and improvising yourself. Also have thirst for knowledge as you build your journey in becoming an experienced developer. All these points are non-negotiable as you build your career as a developer in this industry. As you polish yourself as a seasoned developer, we wrap-up saying code you write must be robust, maintainable, reusable, performant, scalable, secure, and more.
You might also be interested in reading Demystifying Debugging Techniques in SQL Server, a whitepaper by SQL expert Pinal Dave.