What No One Tells You About Software DevelopmentOctober 4, 2019 No Comments
Featured article by Cathy Carter, Independent Technology Author
There are a number of positive reasons to get into developing software. It is an incredibly challenging career that allows you to be creative and technical at the same time. It is a career that is in constant demand, so as long as you are good at what you do and you are willing to adapt and grow, chances are you will always have employment. However, there are some downsides that no one talks about. These downsides are not so great that they should dissuade you from pursuing developing software as a career, but they are things that you should be aware of.
Discipline Is the Key to Becoming a Successful Developer
Unless you are the next guru developer who is going to change the world, talent is important, but it is not everything. A talented developer who does not have discipline has been compared to a experienced sailor who doesn’t have a map. They can steer the boat well, but they never find their way to shore.
- A disciplined developer does not trade quality for speed.
- A disciplined developer knows their role in the process, and they work with the goal of helping the project succeed. This means that during code reviews, they are fully mentally present.
- A disciplined developer understands the importance of focused time for development work. They use tools like headphones or other devices to block out distractions and focus on getting the job done.
Software Developers Can Be Jerks
Please, do not misconstrue what we are saying. Not all software developers are jerks. There are many developers who are nice people. There are many companies that have created a supportive environment that encourage creativity and where the employees support one another. But there are also a lot of jerks.
This means that as a developer, you need to grow a thick skin right away. Don’t go into a new job or into a new team negatively, but if you walk into it with your eyes open, you can protect yourself. Not all developers have your best interests at heart. There are a number of people in this industry who would be happy to watch you fail because it validates them. It makes them feel that they are smarter than you.
This should impact the mentality that you have when it comes time for you to compose a new idea or to attack a problem from a unique angle. You will likely have more people criticizing you than supporting you. So you will need to have resilience if you are going to succeed as a developer.
Many developers are not ready for the visceral aggressiveness or the passive aggressiveness they’re going to be hit with in the work environment. When it comes to passive aggressiveness, some developers do not even realize that they are being targeted.
It’s not that developers are mean-spirited. It’s just that being a developer means that you are part of a unique community that values high intelligence and ability. Unfortunately, in middle school and high school these same skills and abilities lead to people being victimized. So you have a culture of people went through their teenage years being bullied and victimized and are now trying to validate and evaluate themselves.
You Need to Learn to Fail Fast and to Fail Often If You Want to Be Successful
Software development thrives on failure. The harder the task you tackle, the greater the chance is that you will make a mistake somewhere through the development process. And the unique thing with software development is that it is a constantly changing and evolving process. This increases your chances of making a mistake.
The fear of failure will hinder you from being a good developer. One of the biggest mistakes that new developers make is trying to portray themselves like they know what they are doing when they do not. They allow the fear of failing or the fear of looking foolish to consume them. This prevents them from asking questions that could lead to their improvement.
The sooner a developer realizes that failure is part of the process and the sooner they embrace their failure, the better developer they will become in a short amount of time.
Good Developers Understand the Difference between Pride and Persistence
A good developer understands the difference between persistence and pride. Persistence is that stick-to-it attitude that forces you to stay with the problem no matter how hard it is until you find the solution. You know that for every problem there is always a solution. When you find that solution, it’s the best feeling in the world.
Pride, on the other hand, is where one allows their ego to turn a solvable programming problem into a productivity drain. This is especially true if the solution is already available online. This means that from time to time developers should be good at Googling.
Being a developer is a challenging yet rewarding career. To get the most out of it, you must stretch the boundaries of your skills and challenge who and what you are as a person.