By John Hutchins, Quantix Vice President, Client Services
Disclaimer: This blog is in response to the article “What I Wish I Knew When I Started My Career As A Software Developer” by Michael O. Church
First, let me provide my disclaimer – I’m not a software developer. I’m a sales person who has moved into the ranks of management in the IT staffing world. Although I couldn’t code myself out of a paper bag, I have participated in the careers of thousands of software developers and IT professionals during the last 17 years of my career. I’ve watched some people thrive, some people limp along and some people fail miserably to the point of leaving the industry all together.
I agree with Mr. Church’s emphasis on learning and taking responsibility for your own success to include keeping yourself healthy with exercise. There are other points he makes with which I don’t agree, but to keep it positive, here is some additional advice based on what I’ve seen:
Chase the opportunity, not the money. I’ve seen software developers who appear solely motivated by money. They’re always looking around the corner for the next position that pays more. They appear to have a minimal amount of loyalty to their employer or anyone else for that matter. From my experience, they often burn bridges and end up both unsatisfied and unhappy. Then I see other software developers who focus on being the best they can be within their area of expertise. They are selfish in choosing positions based on the opportunity – will the position help them to grow? Money is important, but it is not their sole focus and they would be willing to take a pay cut for the right opportunity – an opportunity that helps them refine a skill or add a new skill. They build alliances, make a positive name for themselves and generally appear to be happy. And by the way, they don’t need to chase the money, it chases them.
Be an altruistic team member. I’ve seen software developers who are all about themselves. They avoid the grunt work whenever possible, passing it off to other team members. When they review someone else’s code, they butcher it. When they participate in interviews, they are more focused on proving their technical prowess than on truly qualifying the candidate. From my experience, the people around them may respect their technical abilities, but they are not well liked and don’t end up in fulfilling roles. Then I see other software developers who volunteer for the more mundane assignments, help their teammates whenever they can and focus on the success of the project. They may get taken advantage of once in a while, but their teammates and supervisors like them. As a result, they develop a solid network that enables them to move between teams and companies without difficulty. Opportunity and good money almost always follow.
Avoid becoming political. I’ve seen software developers who jump in and play the politics found in many companies. They sabotage coworkers, are constantly looking over their shoulder and trying to position themselves for greatness. They spend more time on politics than on doing a quality job and eventually pay for it with their job. Then I see other software developers who give credit where credit is due, who help their coworkers succeed and who work hard for the benefit of everyone. They don’t necessarily ignore or avoid the politics, but they rise above the politics and do a quality job. These are the developers that end up with more career options than they know what to do with. These are the software developers others want to work with and are willing to pay for.
Be logical, not emotional. I’ve seen software developers who fly off the handle when asked to do something they view as beneath them, when required to interview in-person or asked to wear a suit to an interview. For these software developers, drama pervades their daily lives. They equate passion in general with being a good software developer, losing sight of the fact that they are developing not for the sake of developing, but to solve a business problem. Their coworkers become tired of the drama and let them get their way to avoid confrontation, but they don’t enjoy working with them. As a result, their options slowly become more and more limited, maybe without them even knowing it. Then I see software developers who understand that some short term pain can lead to long-term payoffs. They understand that sometimes you have to do what you don’t want to do, not because it is the correct or better approach, but because it is the approach the business has decided upon. These software developers present their opinion in a reasoned manner and then move on. Their coworkers respect them for both having a logical opinion and for being reasonable when that opinion isn’t accepted. They grow in their careers and do well.
Enjoy yourself. I’ve seen people (software developers, sales people, attorneys, etc.) who really don’t like what they’re doing. They may make a ton of money, but they’re miserable. They are toxic to the people around them and toxic to themselves. Then I see people (software developers, sales people, attorneys, etc.) who enjoy their work, regardless of the fact that they don’t receive the highest pay or are required to work longer hours. They’re happy and people like to be around them. These are the people with whom I want to associate; the people who lift up those around them and, by doing so, lift up themselves.
Again, there are parts of Mr. Church’s article with which I agree, but there are other parts that seem to encourage a self-centered, it’s-all-about-me attitude. From the experiences I’ve had and the people I’ve met, I just don’t see that type of attitude fostering a successful career in any industry, let alone software development.