Surviving The Business Side of Development - A Newbie's Guide
The Agile Zone is brought to you in partnership with JetBrains. Discover how to increase change awareness, code quality, and maintainability through straightforward code reviews, with a simple, lightweight workflow.
This common point of disillusionment is where programming intersects with business. Most programmers enter the profession due to a love for "building things." They love the challenge brought on by new ideas. Most developers would compare themselves to artists recognizing that each developer has his/her own style and rhythm. Introducing business into the mix can drive a wedge through those aspirations. Every programmer loves a project with an unlimited budget and time, but most companies cannot afford that luxury. Having conversations such as "good enough," "minimally viable," or "quick and dirty" are common in business. Additionally, technical debt and refactoring becoming a part of life. Although most programmers strive to avoid these situations, the business pays the bills. Just as a customer advises a car mechanic to only fix what is broken, sometimes programmers are asked to do the same. The cheaper/quicker a repair becomes, the more time/money available. For many newbs this can be disheartening.
It's important to teach them that their heart is still in the right place. It's only their focus that needs some adjustment. The challenge of programming is not lost. That spark or fire within need not burn out. Developers can challenge themselves in many new and interesting ways that can be even more rewarding. The following is a list of areas that drive most seasoned developers:
- Writing the best possible code within the time constraints
- Finding new ways to polish old code (instead of building from scratch)
- Continuously looking for ways to do more with less
- Finding ways to move faster without sacrificing quality
- Taking pride and ownership in meeting/exceeding deadlines - IMPORTANT
- Looking for low-risk innovative ways to combine ideas or technology
- Finding ways to make more money or reduce costs for a company
- Constantly striving for more knowledge and educating others