Developers

How to be a great developer

This article is a re-post of a wonderful article that I just came across on Funkatron. It is a great piece of advice for developers, the points are evident to all but still we somehow manage to look past them. Have a look, they are worth considering:

  • Empathy is your most important skill. Practice it with everyone you interact with, and everyone who interacts with your work.
  • Humility goes hand in hand with empathy. Be open to the possibility (likelihood, even) that you are wrong. Know that you will always be learning and improving. Accept and own up to mistakes immediately.

  • The less you fear being wrong, the more confident you can be. You are wrong about many things. You know very little about most things. Everyone else is exactly the same way. Embrace it. Always learn, always question, always adapt and grow.
  • Understand what you do well, and what you don’t.
  • If you have a job you enjoy that pays pretty well, know how lucky you are. We live at a time where the demand for developers exceeds the supply. Not everyone is so lucky.
  • Refuse to participate in tribalism. We are social animals, and being part of a group gives us confidence, but warring over technology choices distracts us from doing good work and practicing empathy. Build communities with what we have in common, and embrace the diversity that makes each of us unique. Make them safe places for anyone who is interested in participating.
  • Make people’s lives better with your skills.
  • Don’t worry about how many people use what you make. Empowering 5 people is incredibly special. They will remember what you did for them.
  • Make the community around you better. You don’t need to go to some Magic City of Tech Genius to do important work. It doesn’t matter where you are – what matters is the difference you make in the lives around you. And this is the Internet, so the people “around you” could be on the other side of the world.
  • Share what you learn with the people around you. Ask them to share what they have learned with you.
  • Your choices of technology and technique matter, but only so far as they serve what you make with them. As a musician, I ran into tons of people who had great gear and loved to argue about equipment, but barely ever finished a song.
  • View absolute statements with extreme skepticism.
  • Dismissing a technology without a sound, reasonable argument is lazy and prone to error.
  • Be extremely careful about participating in X vs Y arguments. They are rarely worth your time.
  • Be liberal in learning about new technologies and approaches. Be conservative in using them.
  • Set aside a little time each week to learn about new tech. Even just subscribing to a weekly aggregation newsletter (like PHP/Python/JavaScript Weekly) can bring up cool new things to explore.
  • If you go to conferences (and you should if you can), try to catch one or two talks about technologies you have no experience with. Look for beginner/intro level presentations about a language you’ve never learned, or a platform you have no experience with. Even if you never use it in production, exposure to different approaches and techniques will make you a better developer.
  • Any technology can be the right choice depending on the needs of the project and strengths of the team.
  • Never assume you know why a decision was made unless you were in the room when it was made.
  • Always keep two groups in mind: the users and the rest of your team. They are the ones affected by the decisions you make.
  • Poor communication will kill the effectiveness of the most talented team. Work hard at effective, structured communication and documentation.
  • Reserve your loyalty for people. Not brands. Not companies. Not technologies.

 

Smriti Tuteja

Smriti is a content freak who loves anything tech. At HackerEarth, you can find her educating everyone about the latest happenings in the tech industry, sometimes against their will.

Share
Published by
Smriti Tuteja

Recent Posts

Top 10 HR Competencies to Build a Strong HR Department: A Comprehensive Guide

Introduction In today's dynamic workplaces, a strong HR department is no longer a luxury –…

7 hours ago

8 Steps for Conducting a Job Tasks Analysis: A Complete Guide

Job task analysis is a crucial process for understanding the specific duties and skills required…

8 hours ago

Top 8 Sourcing Tools for Recruiters: A Comprehensive Guide

In today's competitive talent landscape, attracting top candidates requires going beyond traditional job board postings.…

8 hours ago

The 12 Most Effective Employee Selection Methods: A Comprehensive Guide

Finding the perfect fit for your team can feel like searching for a unicorn. But…

8 hours ago

12 Important Recruiting Metrics You Should Know

Recruitment forms a strong foundation to build an effective team. However, do you know if…

12 hours ago

7 Modern Performance Appraisal Methods to Boost Workforce Development

Introduction Performance appraisal has seen a tremendous change over the years. It is no longer…

1 day ago