Most corporate software developers are expected to perform a multitude of tasks outside their level of expertise. Often developers are asked to tackle QA, Technical Writing, Business Analysis, Project Management, and the beat goes on… Now pile on the fact that you are surrounded by lazy and sometimes inferior talent and you’ve got a ‘Kobayashi Maru’, the no win scenario. You simply cannot do it all, so what now?
Make sure all parties involved understand the development process and what is required for success. Enlightening stakeholders concerning the SDLC (software development life cycle) or at least some equivalent will ensure the business is educated on required processes.
Often times business management has no idea on complexity. They think creating a contact is trivial, but we know different as this depends on such items as scale, localization, and roles. Communicate this through emails, blog links, sequence diagrams, discussions, and anyway you can. Business doesn’t know about software development. That’s your job.
Regardless of team or project size you must know what the finish line looks like; otherwise, you’ll never get there. Along with the business, define the end goal and formulate a plan to get there. If compromises are agreed upon with the business, ensure they understand the ramifications.
Your plan needs to include solid processes such as agile in order to keep stakeholders and developers engaged and on the same page; especially, since you’ve been wearing multiple hats. This will quickly show the organization your worth and expose slackers and misplaced developers. You won’t have to say a word.
Try not to get to involved with this stage as hopefully you’ve obtain someone who can help, but the minimum following items need to be defined and documented:
- User Stories
- Project Roles and Responsibilities
Now we are getting organized and acting like we know what we are doing. Expectations are everything. If everyone knows what is expected and it is clearly defined then all parties are covered.
Each person within the organization needs to understand their role within the project. This is your opportunity to again show everyone the amount of business value you provide. At minimum define the following:
Product Owner, Analyst, Manager, Scrum Master, Developers, Testers (QA), and DevOps
The business needs you. You’re asking for something that will improve the business by creating sustainable, extensible, and maintainable software that the organization can go forward with for years to come.
Time for business to realize chaos and grinding on their best performers is not a sustainable paradigm and will ultimately cost the business in time and money giving their competition the edge.