Last week, I talked about the importance of brainstorming and making sure that you write down your thoughts and ideas when speaking with developers. This week, I want to share with you the importance of having a project manager as well as some of the thoughts that I’ve received from our developer Max Rakhimov.
Have a Dedicated Project Manager
– I know that I’ve talked about this before, as have others on this blog, but we really can’t stress enough the importance of having a dedicated project manager, not only on the developer’s side, but more importantly on the client’s side. Having someone focused on the project ensures that it remains on target for delivery, as well as keeps communication open between the development team and the client. Think of who is the best fit to be the project champion.
Understand Everyone’s Role
– There are often many solutions to a single problem, some being more effective than others. I spoke with Max Rakhimov, one of our developers and this is what he had to say:
Clients often fully understand the business problem while the developers typically understand the tools that are available to solve the problem, and how best to use them. It’s the communication between the developers and client that needs to remain open in order to effectively solve the problem, a project manager can often help translate and explain for both sides.
Your developer should always ask such questions as:
- What is the goal of the project, how do you expect to measure if you have achieved those goals?
- What are the short term and long term expectations?
- Does this project affect other areas of business, if so, how?
- If the work is taken from another developer, what are the original design/specification documents, where did the issues occur in development process (modules/features)?
The client should have a basic knowledge of the tools that are being used for the project, including the developer’s experience with similar projects.
Some questions that clients should be asking are:
- Have you done similar projects, what were the pitfalls?
- If I give you a list of primary goals and secondary goals, can you plan to have certain additional features added (for future goals) down the road?
- How do you measure project progress (deliverables, code, milestones)?
- What are the areas of the project that are risk-prone and may take longer than expected?
- What in this project is absolutely new to you (workflow, integration with 3rd party software, other unique features)?
- What in this project is trivial (have you done this 10 times already)?
Failing to have solid communication in the early stages of the project may lead to a system that, while being absolutely up to specs, is unable to evolve further and may even require complete redesign in order to achieve additional goals.
Thanks to Max for his thoughts, next week I plan on discussing how to think beyond design and what is the best way to physically talk with your development team.
Read The Series: