August 5, 2020
Hot Topics:

Anatomy of a Software Development Role: Developer

  • By Robert Bogue
  • Send Email »
  • More Articles »

The Good, the Bad, and the Ugly

No role is perfect and the developer role is no exception. Here are some of the things about the developer role that you'll want to consider before deciding it's what you want to be doing with your career

  • Good: Upward Mobility - Since the development area is one of the largest in IT and because there are so many different specializations and roles within the software development process there's nearly always the opportunity to move up within the hierarchy. The developer role is the foundation upon which most other positions are built. For instance, you're more likely to grow into a development leader role from development than from any other position.
  • Good: Stability - Developers are indispensable to the organizations they work for. They are in point of fact the only people who truly understand how the systems do what they do and why they do what they do. As a result programmers have a relatively stable position even in times of cutback. This is most true of developers who are doing maintenance on critical systems but can apply to all developers. This is not to say that developers are recession proof or that they can't be laid off, that happens in every field. However, when compared to other positions in the software development lifecycle things are relatively stable.
  • Good: Problem Solving - If you like problem solving the developer role may be for you. Developers are in a constant cycle of building and debugging their code. Both sides of that cycle can heavily lean on a problem solving skill. While coding the developer exercises problem solving by figuring out how to get a piece of information that's difficult to get. During the debugging part of this cycle the developer is focusing on identifying the source of the bug or bugs and determining how to eliminate them.
  • Bad: Cube Land - Developers are often relegated to cube land with little interpersonal contact. Because of the need for focused time during development distractions are likely to be minimized. For those with an extroverted personality this might represent a challenge.
  • Ugly: Dysfunction abounds - One of the ugliest things about the developer role is that it's at the end of a very long whip. When the software development process works well the developer feels the crunch of a deadline. When the software development process doesn't work well, and it often doesn't, the developer can be crushed by conflicting needs to get the product completed and a series of quality or incomplete feature issues. The truth is that many managers in most organizations do a really bad job of managing the software development process, which can create very painful positions for developers.


The developer role is the core role into the software development process and is the one that there are the most open positions for. The role itself has its own set of trade offs, however, for the upwardly mobile professional it may be the way to put yourself on the path for the position you really want.

About the Author

Robert Bogue, MCSE (NT4/W2K), MCSA:Security, A+, Network+, Server+, I-Net+, IT Project+, E-Biz+, CDIA+ has contributed to more than 100 book projects and numerous other publishing projects. He writes on topics from networking and certification to Microsoft applications and business needs. Robert is a strategic consultant for Crowe Chizek in Indianapolis. Some of Robert's more recent books are Mobilize Yourself!: The Microsoft Guide to Mobile Technology, Server+ Training Kit, and MCSA Training Guide (70-218): Managing a Windows 2000 Network. He was honored to become a Microsoft MVP for Microsoft Windows Server - Networking. You can reach Robert at Robert.Bogue@CroweChizek.com

Page 2 of 2

This article was originally published on June 9, 2005

Enterprise Development Update

Don't miss an article. Subscribe to our newsletter below.

Thanks for your registration, follow us on our social networks to keep up-to-date