1. Learn about the underlying systems
To have knowledge about programming languages is the main part of software development. It is also very important for developers to be aware about what’s going on lower down the stack.
Pete Bull, a support engineer at Acquia said, “Lots of languages abstract away from what is happening at the system level, and that abstraction is useful because it allows developers to be more productive much of the time. But when you hit a roadblock, a really nasty bug, and need a deeper understanding of what’s happening under the hood, well it’s a useful skill to be able to debug a process and look at the system calls and really see how a piece of code is interacting with the rest of the system.
2. Know command line tools
There are chances that as a developer you may spend most of your time working on a code editor or a fancy IDE. However, also knowing how to execute things at the command line could sometimes make your life easier.
3. Your debugger is your friend
As a coder, you will be spending majority of your time in tracking down bugs. Dave Varon, a bioinformatics developer at Novartis, highlighted the advantage of a debugger and it how can overshadow the initial costs of your time. “Learn to use your debugger!” he told IT World. “Take that extra day or two to configure it. When you don’t see the expected result, just debug it: set breakpoints, step through your code, and esp. 3rd party code. It will save you days of frustration, and even better, you will learn things about coding you can only learn by reading someone else’s code.”
4. Learn to write tests
Some developers feel that it is critical to do unit testing, which means to write tests to authenticate that small units of code are doing what they should. Among those people is Richard Handloff, a database developer with Strategic Power Systems. In an email to IT World, he wrote, “I think the best bit of advice I’d give someone who wants to learn to program is to learn to write good tests and learn to write your tests really early in the process.”
5. Plan on change and learning new systems
Everyone knows that technology changes quickly these days. That applies not only to our beloved consumer goods, but also to the underlying systems, languages, and tools that programmers use to do their jobs.
6. Play well with others
Even though the conventional thought is that programmers work alone, developers still have to work with other people. Ben Miller, the CTO of Sinclair Digital Ventures, stressed on the significance of being able to work as a part of team to your career success. “Big projects mean lots of moving parts coming together and how they fit together and divide up the problem can create impossible engineering problems if you aren’t careful.” he wrote via email to IT World. “Before trying to optimize that one algorithm, work with the team and make sure there isn’t a re-division of the problem that makes each person’s problem simpler. Coding is a team sport!”
7. Don’t be afraid to code yourself out of a job
Miller had a rather interesting piece of advice which, at first blush, may not appear instinctive. “Coding yourself out of a job gets you promoted,” he told IT World. “Find the simplest way to solve problems and make your code resilient and maintenance free and people will give you more and more to do. They will even ask you to teach others to do what you do,” he explained. “In short, worrying about (or at least coding for) job security puts a damper on your career.”