5 answers

What does a computer programmer need?

Asked Oakland, California

5 answers

Alexa’s Answer

Updated Portland, Oregon

Andrew’s answer is very good, so I’ll add just a few things.

1) Flexibility: This is kinda similar to learning quickly. But programmers have to strike a balance between depth and breadth of experience. Programmers that have super deep expertise in one area are awesome for niche positions, but on average you’ll be better suited if you are flexible and willing to try and gain expertise with new technologies. Don’t limit yourself to a very specific tech stack that you’re comfortable with, there’s soooo much to learn.

2) Seek and respond to feedback: If you want to be a better programmer, you need to ask for feedback from your peers and manager and really take that feedback to heart and think about how you can implement that feedback.

3) Continuous improvement: Learn always! Read technical blogs and books! Attend meetups! Tech moves so fast, it’s essential that programmers be able to stay on top of the industry and adapt along with it.

4) Systems thinking: Andrew is very correct that attention to detail is very important. But also, being able to see how your code and your systems relate to the broader whole will make you stronger and make your output better. People love working with people that are able to see the forest through the trees and design solutions that work for everyone.

Andrew’s Answer

Updated

In order for computer programmers to be effective and successful, they need  the ability to build on experience,  learn quickly, have well developed troubleshooting skills, and have a high level of attention to detail. 

  • Building on experience is all about writing code on different projects as well as learning several languages relevant to the area you want to work in.  For technology positions within a corporation, I highly recommend SQL in addition to whatever language your target employer uses for development of products as well as online customer interfaces and internal tools.  Key here is not just gaining items of experience, but relating what all you have learned and applying it to the other skills I have noted above. 
  • Learning quickly will make you sought after because you will be able to take on new projects and even shift languages.  Employers appreciate and highly value the versatility of someone who ramps up quickly.  As you build on your coding experiences, learning new languages and structures will become easier. 
  • Troubleshooting is all about seeing clearly what may not be quite right about the code you or someone else has written.  Be sure to have clear documentation on purposes of different sections of code, good organization of the structures and how they interact, and an effective way of testing the code with a print logging system in place to help you.  Here is a good resource to give you better understanding of troubleshooting https://onextrapixel.com/10-useful-tips-for-debugging-and-troubleshooting-in-programming/
  • Attention to detail is crucial for a computer programmer.  You need to enjoy watching over your work and spotting not only details you may not have right, but also ways you can improve it.  This steady focus is often related to personality and natural aptitude, but it can be developed with practice and proper organization.  Do not be discouraged.  This will get easier and less frustrating with time. 

Andrew recommends the following next steps:

  • Get experience by writing code. Whatever languages you know, try to write every day and use as much of that language's vocabulary as you can.
  • Broaden you language base. Research on google what languages are used a lot. Read about each of them and see which ones you like. Look at similarities and differences with all of them. Here is a good resource article. https://www.bitdegree.org/tutorials/most-used-programming-languages
  • Target a field, area, and employer. Read about different products, services, and fields out there. Most all needs software developers. Once you identify an area you would like to work in, research what code languages are used. This gives you a good starting point to learn the right languages to work in that area.

Naveen’s Answer

Collaboration, Creative Thinking, Problem Solving, Knowledge of Data Structure, RDMS & Data Modelling, Coding guidelines & Best Practices, Mentor, Receive Feedback, Knowledge on Security and Deployment, Infrastructure and Programming like C and Java.

Amol’s Answer

Updated Bengaluru, Karnataka, India

Computer programmers needs a good understanding of below things

  • Computer Programming languages, such as C ,C++ and Java etc.
  • Update and expand existing programs
  • Test programs for errors and fix the faulty lines of computer code
  • Create and test code in an integrated development environment (IDE)
  • Use code libraries, which are collections of independent lines of code, to simplify the writing
  • Command on Scripting languages like Python , Ruby , Perl etc.


Lennert’s Answer

Updated Barcelona, Catalonia, Spain

Passion. If you love tech, you'll constantly be learning and improving which is something you'll definitely need to do as a programmer anyways.

If you already enjoy coding something in your free time you're constantly improving and that'll be reflected in how well you do at your job.