by Arthur Nielsen Demain and Chris Ching
Qualities of a Good Coder/Programmer
Knowing how to code is a crucial and in-demand 21st century skill, but learning that skill alone won’t get you far ahead of the curve. The secret to longevity in coding? Learning and nurturing the qualities that can make YOU, the human being, the person teeming with potential, to become the best coder that you can possibly become. Whether you are keen on establishing a long-term career in coding or you are just doing it as a hobby on the side, here are the essential qualities that you can adopt and nurture so you can become a cut above the rest:
Patience to master foundational skills
You won’t be an impressive coder every night. Patiently work your way in mastering the basics of any programming language, even the older ones, and you’ll eventually be ready to tackle higher level coding work. Think of it as laying the necessary ground work to build your house or fort. Your structure will crumble easily if building the foundation was rushed, right? Just trust the learning process and get the necessary work done because hey, you’ll eventually get there.
Proactivity to learn and update knowledge/skills
You can’t just rest your laurels once you’ve learned the basics, can you? Technology is constantly evolving, and so should your coding skills. Keep yourself up to date with the latest developments in the programming world and then get the work done to upgrade your skills at your own pace. Don’t rush from one learning point to another, but don’t also stagnate.
It’s time to hone your problem-solving/investigative skills as any piece of app or software that you’ll work on won’t work as expected all the time. You’re bound to suffer from a lot of setbacks and crashes especially when you’re only starting out, so prepare to stick it out and try getting to the root cause of the problem instead of giving up. Aren’t you craving for that feeling of relief once your app works again after a crash? What a high, that is!
Some codes prefer to work by themselves, whereas some want company. Either way, be prepared to collaborate with others because you’ll never achieve success on your own. It’s easy to get so confused and lost especially when you’re just starting to learn how to code, so save yourself some time by asking for help if you really need it. Join online communities where answers to your questions can come in minutes or even seconds. And if you also saw someone struggling, then don’t hesitate to also reach out and provide help. Go grab those karma points!
Composure and flexibility
It can be easy to get rattled once you start working for clients and deadlines have to be met. That said, it’s crucial that you maintain grace under pressure. You know yourself better so do what you think is best for you to refocus and gain clarity once you start feeling overwhelmed. Be flexible when it comes to adjusting your plans or schedule because last-minute changes due to failure are always bound to happen.
This skill is tied closely with collaboration. As a coder, you’re not only expected to work in front of your laptop all of the time. To get to where you are, you are encouraged to maintain good relationships with fellow coders, your manager, your teammates, and your mentors. You won’t benefit from whatever knowledge or skill that other people can pass on you and vice versa if you’re not striving to be better in dealing with people with various personalities. So say yes to amazing teamwork!
Successful coders are humble people in the sense that they don’t brag their accomplishments. Instead, they use their time instead to help others succeed because they know what it feels like to struggle and to finally overcome that struggle. Humble coders are also not afraid to admit their shortcomings and to ask for help when it’s time. They have a full realization that what they’ve achieved won’t be possible if not for the kindness of the other people who have gone out of their way to help them. Most importantly, they know how to process failure!
Coders know how to build something with the human being in mind. Design thinkers do not immediately focus on the outcome but on the process of the creation. Most importantly, they exhibit empathy because when they design or create something, they are striving to address a certain “pain.”
If you’re really resolved in building a long-term career in coding, then expect to receive projects from clients left and right at some point. That said, start honing your project management skills. Know what “chunking” is and take advantage of any project management software if you find using one necessary. That way, you’re assured that no piece of the project gets neglected and you and the other members of your team are on the same page towards achieving your goals in a timely manner.
This attribute refers to respecting other’s people time by being transparent in whatever you can and cannot deliver. Overpromising and then failing to deliver in the end can tarnish your reputation as a coder. Strive to be honest in your level of skill and in what you can do to bridge your learning gaps so that you and your teammates and/or clients can adjust your project goals accordingly.
How to become a Better Coder/Programmer
Prioritize learning how to code
Make a conscious effort to include learning and practicing your coding skills consistently. You don’t have to do it every day, but make a solid plan for your coding learning that you can stick to. Practice is key until you get better and better.
Take advantage of free/affordable learning resources
Learning how to code shouldn’t break your bank. There are a ton of free or cheap learning resources out there that will get you up to speed in building your very first app! Ever heard of free video tutorials on Youtube? There are also a lot of online communities on Facebook, for example, whose members are equally eager learners just like you who will be more than willing to share their bits of knowledge with you if in case you need some helping hand.
Do free coding projects to get you started
Don’t hesitate to offer your coding skills for free. That can make you feel uncomfortable at first, but hey, growth will never happen in your comfort zone. Free projects may not pay the bills, but you’ll be forced in a way to practice your skills and still deliver according to what you and your client have agreed upon. If you happen to exceed your client’s expectations, then don’t forget to ask for testimonials because these pieces of positive feedback will eventually help you land that first paying gig.
Have a mentor
I can never emphasize enough that you’ll never achieve success on your own. Who is that person who got you interested in coding in the first place? Be it a friend or a teacher, try to have that one person whom you can reliably partner with in your possibly lifelong learning journey with coding/programming. This mentor should empower to take on additional challenges that will motivate you to keep on learning and upgrading your coding knowledge and skills. Let that inspirational vibes from that person flow into you!
Look for value in your work
Wherever you are in your learning journey, always find value in your work. Your success today only means that you can achieve bigger successes in the future. An upgraded version of that first app you’ve built? Or perhaps another programming language to learn once you’ve mastered Java? On the other hand, your failure today is only a stepping stone towards achieving your hard-earned success someday. List what didn’t work out this time and learn from it.