In his book, What Got You Here, Won’t Get You There, Marshall Goldsmith pointed out that beyond a certain skill level, everyone is good enough. Once you rise to this level, your soft skills will determine your success.
The good news is that you can consciously focus on your soft skills. This will give you a significant advantage throughout your career. Developing soft skills will not only accelerate your career, but it will also make you a better professional.
Have you discovered any of your colleagues make something inappropriate? Have you ever had a colleague who
- makes quick judgement on others and formalizes his judgement with destructive comments,
- tends to focus on helping anyone even when his help is not welcome,
- is not willing to accept any help under any circumstances,
- keeps bragging about his accomplishments whenever he has a chance to,
- spreads negative emotions at the workplace, such as anger or lack of motivation, affecting the mood of other people,
- fails to give you any feedback at any time, and even fails to say thank you,
- keeps waiting for his own turn in the conversation, or keeps interrupting you, refusing to listen to you,
- is friendly with you, but trash talks you when you are not present,
- getting and keeping all the credit for your accomplishments?
There are countless stories about people doing things that hurt their careers. Don’t be one of them!
Using soft skills, you can represent the interest of your team. You will have the courage to speak up when a mistake surfaces, or you will know when to take charge of communication in a project.
Soft skills will also help you get promotions, raises, better working conditions, and increase the number of employment options by elevating your interview skills.
We will focus on four soft skills that are essential for you from the perspective of your career. The soft skills are:
- Personal Integrity
This list may surprise you. Where is flexibility? Where is commitment? Where is time management? Teamwork? Leadership? Mentoring? Problem solving? Courtesy?
If you think about all these skills, you can only imitate them if you lack the fundamental four skills. How can you lead without communication skills, integrity, taking responsibility, and showing a good example by being a professional? How can you solve meaningful problems in practice or mentor others, if you are not a professional, and you can’t communicate your own thought process?
If these four skills are there, you will easily acquire other ones too. Think about fixing a bug in the code. There are symptomal treatments, and there is an approach to fix the root cause. A professional addresses the root cause. A professional keeps personal integrity by communicating that the root cause has to be fixed, even if the symptom has to be addressed before in a hotfix.
Employers look for people with these skills. A software professional with personal integrity, self-responsibility, and good communication skills is hard to find. This is going to be your advantage. If you exercise these skills on a regular basis, your current employer may recognize changes in your attitude relatively soon. Alternatively, if your employer does not notice anything, it is not a big problem, as you will have a lot of other options to choose from. Other employers will definitely show their interest in your services.
Let’s examine the four fundamental soft skills in detail.
Whatever you do in your career, always think about the big picture. All decisions have a knock-on effect on your career. Approaching your decisions with total integrity means that you will never regret anything you do.
Approaching decisions with integrity implies that you are honest and ethical. You do what you think is right. You have a moral code, and you are not willing to enter into compromises because of fear, seeking to meet expectations of others, or the desire to get short term benefits.
Integrity is the core of our holistic model. This is why we start with developing our personal integrity in Chapter 2 of The Developer’s Edge. You will learn how to build your self-esteem, how to develop your confidence, and how to grow as a professional. This will allow you to step up and do what you think is right, instead of seeking what other people think is right. Your integrity is key to your utility at the workplace.
If you have doubts about this process, I can understand you. My actions used to be driven by my own fears. I had a lot of limiting beliefs in place that prevented me from acting with integrity. In my own thoughts, I did not deserve to do what I really wanted to, as pleasing others came first. This mindset not only poisons your thoughts, but it also drains your energy and internal drive.
Whenever I visit a relatively safe city, I have a habit of taking public transportation on Monday morning to see what people are like. Regardless of the city I am in, I can often see empty eyes and low energy. It looks to me that these people trade five days of slavery in exchange for two days of happiness, and they realize every Monday morning that it’s time to be a slave again.
I am also quite certain that you have seen at least one colleague of yours who comes in happily almost every Monday morning. Ask yourself the question, does this person act with integrity?
The key to job satisfaction is that you can afford to act with integrity. You may not be there in your career yet. There are managers out there who force you into compromises. This is why we will work on setting meaningful goals for you, and put you on a career path worth pursuing.
All chapters of this book build on integrity. Lies, or any behavior that challenges your personal integrity should have no place in a life of a software professional. Do you feel that you want to be an expert instead of pursuing the leadership path? No problem, you will do whatever it takes to become an expert, and earn more than your lead. In the 21st Century, this option is available to you.
Some companies get away with continuously shipping software without a Quality Assurance team. Some companies get away with working effectively without employing project managers taking charge of coordinating resources. The necessary condition for this to work is taking responsibility on individual and team level.
Employers seek people who go the extra mile. People taking charge will never tell you that it’s not their job to help their own company with an effort they are not specialized in. People who take responsibility will never sit in front of their computers feeling blocked and waiting for an answer to arrive. As the name of this soft skill says, they take responsibility by standing up, and getting the piece of information they need. They never settle until they unblock themselves.
If you have the reputation of taking responsibility, good employers will value your contribution. In the era of increasing demand for software developers, many developers think that they can get away with not taking responsibility. This will be your advantage.
In some cultures, people tend to blame others for their own mistakes more than in other cultures. In most cases, people have a hard time admitting that they made a mistake. Your weapon will be to act act with integrity and take responsibility even for your mistakes. After a while, you will realize that making mistakes are essential in growing. If you don’t make mistakes, you learn slower. If you are afraid of making mistakes, your contribution will be less valuable.
In The Developer’s Edge, we will kick off your quest in taking responsibility by introducing the idea that you are responsible for developing your skills. You will learn how to shift your mindset to grow rapidly.You will also discover the connection between motivation and willpower, where you may draw important conclusions about motivating yourself.
You can shape your character by eliminating your weaknesses and taking responsibility. If you get no feedback, no problem, you will learn how to take the initiative and build feedback loops. If you aren’t noticed, you can take responsibility and accomplish things that no-one will overlook. Choosing responsibility instead of choosing more money pays off in the long run, as money catches up with higher responsibility.
In the negotiation phase, you can show that take responsibility without explicitly bragging about it. You can even take responsibility for researching your salary, and respond with your expectations without getting the disadvantage many career coaches keep telling you about. The first person naming their expectations does not always lose. In fact, having seen this process more than a hundred times, people who name their expectations get the advantage of a tailored and fair interviewing experience, where candidates get a chance to prove their value.
Professionalism is essential for career advancement. Coupled with personal integrity and responsibility, other people will view you as someone whose professional opinion is to be respected. Very few software developers master these skills. This is the number one reason why developers are afraid of interviewing and salary negotiations. This is also the number one reason why many developers lack the self-esteem required to even think about targeting one of the most lucrative positions available to them.
What is professionalism? This is a very hard question, as many people have many different criteria towards professionalism. We will explore it from multiple angles.
Many people, especially outside the field of software development just scratch the surface, and only consider your appearance to determine your level of professionalism. Although appearance is important, is not everything. Your dress code, your tidy desk, the way how you eat, behave, and talk has an effect on how other people judge you. These aspects are all included in your personal brand. However, if your colleagues wear T-shirts and shorts, no-one asks you to change your style and start wearing suits. Use common sense, and dress just a bit better than your colleagues. This way, they will not only accept you, but they also look up to you.
On some level, clothing has really nothing to do with professionalism. However, as a trader friend of mine has put it, “the market is always right”. Rebelling against how other people perceive you doesn’t make sense. Even if assumptions are false, if you dress worse than your colleagues, and there are twenty empty bottles of soft-drinks on your desk, many people will view you as less professional than others.
The second component of professionalism is your qualifications and certifications. Let’s face it: a degree in Carnegie Mellon University will mean more to some employers than a degree obtained in a no-name college. Standard certifications may also be important for large companies with established processes. You may now think, wait a minute Zsolt, are you suggesting that I should start collecting useless certificates? My answer is an obvious no.
The good news is that in the 21st Century, you can make a difference even without a degree or any certifications in your hands. If you have a professional attitude, you can solve meaningful problems. If you know how to establish your personal brand and market it, you will reach your career goals a lot faster than by collecting certificates. Well marketed hands-on experience almost always wins over theoretical knowledge. Furthermore, many prestigious companies don’t even look at your qualifications or certifications, they just evaluate your portfolio and experience.
Let’s examine how The Developer’s Edge helps you become a better professional:
- In Chapter 4, you will read what it takes to create a professional application package, and you will also get advice on establishing your online presence with little work.
- Little work does not mean that you plant a career seed and your online presence will magically grow out of nothing. Little work means that we apply the quadratic Pareto principle. According to the Pareto principle, 20% of your efforts bring 80% of your results. Applying the same Pareto principle inside the 20%, we can conclude that 4% of your efforts bring 64% of your results. You can identify the quick wins that will make a big difference in your career. For instance, in Chapter 3, you will dream big, and create a clear career path for yourself. This includes finding a specialization worth pursuing as a software professional.
- In Chapters 6 and 7, you will learn the ins and outs of researching your salary to avoid looking unprofessional when asked, “What salary are you targeting?”.
- A professional has standards towards behavior. Professionals do not play corporate games, because they have nothing to fear. You will learn these behavioral standards in Chapter 2.
- I mentioned above that being competent in a specialized area is important, and it characterizes software professionals. Other people will come to you for advice, and they will trust your abilities. In Chapter 4, you will read about creating a learning plan for yourself, and apply project-based learning and lateral thinking to accelerate your learning process. Effective learning pays off. Many people have a hard time keeping up with technological advancement. They keep reading books, and never stop for putting their knowledge into practice. When it comes to learning, professionals know that less is more.
- As an added bonus, a whole section on professionalism in Chapter 5. Building on the foundations of what other authors have written about the topic, we will create our own professional code.
One important aspect of professionalism is that you are reliable, and accountable. Instead of over promising and under delivering, you do your best to keep your promises, and if these promises cannot be kept, you inform everyone as soon as possible. Instead of hiding behind an excuse, you hold yourself accountable, and you are available to discuss conclusions of the mistake. Professionals reserve the right not to be perfect, and they do their best when it comes to correcting their mistakes.
Our fourth and last essential soft skill is vital regardless of what we want in life. Communication not only complements all other soft skills, but it also enables you to take them to the next level.
Many software developers have a hard time expressing themselves. Sitting in front of a computer several hours a day, and writing code, thinking about abstract ideas, and exercising your analytical mind does not help you much in communicating better.
Communicating with others is not the only task that you should learn to be more successful. We will also focus on communicating with yourself. Things you tell yourself determine your self-esteem, shape your self-image, and can make you more confident. You will not be driven by your fears. You will allow yourself to grow beyond your current imagination.
Your online presence is a written communication task, where you have to convince the external world that they should consider you. Presenting yourself is a vital skill if you want to target better jobs.
Communicating at the workplace determines how much your team will trust you. Giving and receiving feedback determines how quickly you can grow. Feedback also increases your chances at the negotiation table, when it comes to talking about your next raise.
After the foundations have been laid out, you will be ready to negotiate a higher salary for yourself, or start your job hunt. In chapters 6 and 7 of The Developer’s Edge, we will fine-tune your negotiation skills, and make your life as easy as possible. You will be a confident negotiator. You will be able to face your current employer as well as other employers, and assertively represent your interest, while creating win-win situations.
I have a zero tolerance policy towards generalized career advice. When it comes to communication, most people give you universal rules such as “the first person naming a number, loses at the negotiation table”. Telling you an exact script to say also falls into this category. This book is all about giving you the foundations that will enable you to laugh when reading such advice.
Most people put themselves in very tough spots by relying on negotiation techniques, sacrificing their own personal integrity. We will work on making your life as easy as possible. You do your job well, and your employer will often back you up. If this does not happen, your current employer will be likely to lose you, as other potential employers will fight for you.
I also have a zero tolerance policy towards manipulation, lack of honesty, narcissism, and blackmailing. You won’t need an external offer to negotiate a higher salary with your current employer if you want to stay where you are. You won’t need to brag about your accomplishments, as you will learn how to use your feedback to your advantage, and how to earn the respect of your manager so that you can see and hear your accomplishments from his or her mouth.
Consequences of the Four Essential Soft Skills
Integrity, responsibility, professionalism, and communication help you improve other areas of your professional career. Let’s see some examples.
Teamwork: professionals realize that they have to rely on other people. By taking charge, and communicating effectively, you will be able to cooperate with your team better, for the purpose of solving meaningful problems better and faster than alone.
Work ethic: the code of a professional includes high standards when it comes to work ethic. Otherwise professional risk losing their integrity. Professionals learn how to work smart, take the initiative, and are able to cooperate with others when they need help.
Leadership: leadership is all about leading by example showing your professional attitude, taking full responsibility, and communicating. Good leaders also act based on their personal integrity. You don’t need a three day long leadership retreat or a team lead position to start acting as a true leader.
Mentorship: software developers look for mentors in and outside the workplace. You can be a credible mentor even as a junior developer. At least you have a perspective of telling others how you have overcome the difficulties of learning something new. A senior developer can hardly recall his struggles with learning. You can teach others how to come up with professional solutions. Mentoring others is also a great way to fine-tune your own communication skills.
Problem solving: the attitude of a software professional continuously challenges your problem solving skills, as you keep working on meaningful problems in your career. A professional never settles for a symptomal solution. A professional always digs more deeply to find and eliminate the root cause of a problem. Assuming that you get better at whatever you do on a regular basis, developing your problem solving skills will be a side-effect of professionalism and your integrity of wanting to become a true software professional.
Time management: another skill that seems to have little to no correlation with the four essential soft skills. Let’s dig a bit deeper. Topics covering time management, productivity, deep work, and effective work are vital in the life of a software professional. Assuming that you want to deliver a professional solution, it makes little sense to waste your time on things that don’t matter from the perspective of your career. It is also your responsibility to set your boundaries. Sometimes you have to tell other people that you are in the middle of something, and ask them to come back to you in an hour or two. This requires communication skills. Sometimes you have to tell yourself that you need to stand up, walk, relax, and regain your energy. Other times you may have to tell yourself that browsing Facebook won’t solve the problem that you feel bored. Maybe you need to solve the cause why you are bored, and make your work more effective.
In The Developer’s Edge, we will use these four soft skills to create an edge for you. This evident advantage will not only make you a better professional, but it will also help you get your dream job. If you are interested in learning more, check out the book on Leanpub!