To be employable in IT, you need the following skills:

  1. Tech Skills
  2. Business Skills
  3. Soft Skills
  4. Process Skills

Tech Skills

You require programming knowledge of 1 or 2 programming languages. For example, Java and Python. More important than programming languages, it’s the art and science of programming that you should know. For instance, Semantics (meaning) is more important than Syntax (grammar).  You really do not have to know if char *argv or char **argv is the correct usage. In this case, you are expected to know that argv stands for the arguments in a program. You can google the syntax anytime, but principles of programming languages take years to learn. So, choose a language and go in depth. Most of the programming languages have similarities. If you learn C++, you can learn Java easily. Ideally you should have knowledge of front-end (HTML/CSS/Javascript) and the backend (PHP/Java/C#/Python). What you should aim to become is a full stack developer, which means knowing the programming aspects from front-end to the back-end. It takes time to become one. In today’s world, it would be good if you know mathematics and statistics besides programming. You may be writing AI (Artificial Intelligence) programs, which require all these skills. Programming languages come with IDE’s (Integrated Development Environment) for example: Visual Studio for .NET, Eclipse for Java and so on. The main languages used for Data Science, AI are Python and ‘R’ (a statistical language). Besides these, there are many code libraries like CNTK (Micorosft), PyTorch (Facebook), TensorFlow (Google) etc. So, you may get a fillip if you learn these.

Business Skills

Programmers often forget that you are working for a business or better yet, a domain. For example: say that you are working for the Banking and Insurance industry. It makes great sense to learn how things happen in business. What are the processes that they follow ? What are the pain areas where automation can help ? What sort of analytics go into it ? Once you are absorbed in a domain, learn the business. Right from strategy to tactics to operations. You must know how the business works. The business doesn’t care about your programming prowess. The bottom line that they are concerned with is, results. How are you going to make their lives easier. Very often, you find that business-savvy people are not knowledgeable about programming. If you can understand their problems and provide them solutions which help them, you will go a long way. You have to speak their language – profit, costs, revenue, productivity, efficiency etc. So, pick up the business skills while you are at it.

Soft Skills

This includes things like

  • Attitude
  • Presentation skills
  • Communication Skills
  • Team Work
  • Meeting skills

A lot of people think that for programmers, the only thing that is required is Tech Skills. Nothing could be further from the truth. HR departments nowadays lays a lot of emphasis on Soft skills. For example: Do you have the right attitude? Are you having a positive mindset? Will you work efficiently in a team ? and so on. As a part of induction trainings in companies, many include these soft skills. It’s your basic personality that will get you a good job, not just your library of tech skills. So, keep improving your soft skills. Have an attitude of a life-long learner and be humble.

Process Skills

Besides all the above, you should know that companies follow standards. For example : ISO and CMM are standards that many IT companies adhere to. These standards mandate the use of certain types of processes. Take for example CMM (Capability Maturity Model). There are 5 levels starting from 1 to 5. Your organization’s process maturity may be level 4. So once an audit is done by the official authorities, you are awarded a certificate. In this case CMM 4. Your processes should mature to reach level 5, which is the highest compliance in CMM. Likewise, you have ISO (International Standards Organization). Then there maybe compliance to industry specific standards. For example: SOX (Sarbanes Oxley) for Finance sector, HIPAA (Health Insurance Portability and Accountability Act) for the Healthcare sector and so on. Be aware of these standards, because this may affect your code. All these standards depict the processes that need to be followed in different scenarios. So, get yourself familiarized with them.

The faster you absorb all the above, the more progress you make. So, keep on getting trained, self or by others. There is a lot to learn and one lifetime seems to be short. However, give it the best shot that you got and grab the opportunities as they fly by you. Be honest and sincere and work towards solving problems. That is the reason why you get paid. And the bigger the problem that you solve, the more you will get paid.

Wishing you all the best. May God Bless !