There are so many things that programmers do that have nothing to do with coding, but is a common rookie mistake for them to focus only on learning technical skills. Companies looking for development services, think about their needs, beyond programming. Some of the most mentioned by customers are communication, collaboration, problem solving, empathy, creativity, among others. Those are probably all the lessons you do not receive at school, but that are highly necessary to succeed. As we say here in Xipe Technology, good coders are not enough. That’s why we would like to share with the new generations of programmers, some of the aspects that we believe are worth working on:
We’re not talking about being the best in a specific technology or language, but to promote aptitudes that allow you to be aligned with what customers expect from you. Some of them can be:
Being honest, about your knowledge, capabilities and limitations.
Being accurate with time estimations and stick to them.
Managing negotiation for the common benefit of both sides.
This one is vital. Whether you work as part of a firm or as a freelancer, you’ll have to team up with other people (programmers or not) in order to achieve expected goals.
Maintain good communication, clarity and organization. Everyone needs to know what to do and when. It is convenient to define rules or guidelines that must be followed by every member of the team.
And please, be collaborative, when someone asks for help, be willing to do it.
3.- Deep understanding of the product/ service of your customer
This is a bit related with empathy. You need to put yourself in the shoes of your users in order to deliver great products that are in fact, helpful. We assure you, this way your projects will be more likely to succeed.
Programmers need to know what the software is meant to be, so they can make better decisions and prevent most of the problems down the road.
4.- Problem Solving
The ability to analyze a problem, figure out different approaches to solve it and then choose the best one, should be considered an art.
Yes, it is hard to stop complaining and giving excuses instead of solutions, let alone to divide an issue into smaller ones and solve them one by one as an expert. But, if you become a good problem solver, you’ll be on the other side.
5.- Create Networks
As the saying goes “If you want to go fast, go alone. If you want to go far, go together.” Consider joining a valuable group of people that add to the equation, after all, they will have a strong influence in you. Having said that, be careful on selecting that people.
There are so many ways to make contacts: workshops, community groups, bootcamps. There is always something to learn from others, skills, life experiences, points of view, even mistakes. Learn from the more and the less experienced, that knowledge will be one of your best tools along the way.