I’ve done a considerable amount of work over the years managing projects for a FileMaker Business Alliance Platinum Level development shop and managing custom development projects for my own clients. On the topic of custom development project management, I have written white papers, presented seminars and Devcon presentations, and coached a number of development shops on the implementation of project management processes. Needless to say, when I’m around others in the development community, project management is often a topic of conversation, particularly how to define what a PM actually does.
The most common misconception that I’ve come across is mistaking a senior level developer or technical lead for a project manager. The mistake actually makes absolute sense. Development shops typically evolve out of a solo consultancy. A solo developer ends up with too much work and eventually hires others to help. A business is born and before long there are a few developers, at different technical and experience levels, working on various projects. The original developer, or business owner, focuses on sales, the business grows even more, and a critical point is reached where everyone is working on their own projects, nobody is paying attention to the big picture, and stuff starts falling through the cracks. “WE NEED A PROJECT MANAGER!”
The most senior developer on the team, who has emerged as a leader or coach for the less experienced developers, becomes the obvious choice to manage all of the projects. And there’s the mistake. Typically the most senior developer is so because he or she loves to get lost in the code. They love to geek out on the latest technology, take on the most challenging projects, and figure out how to make the software “do the impossible”. While these rock stars are well suited to handle the heavy technical lifting on very complex projects, and are valuable assets to advise the entire team on technical issues and challenges, those skills do not necessarily make them well suited to manage projects.
Project management is about managing the human side of an engagement, particularly the expectations of everyone on the team, from those who consume the software to those who create it. The most important skills that a project manager can develop and practice are organization and communication. A project manager has to be a systems thinker with the ability to see the picture, keep it organized, and then communicate each step of the process so that everyone stays on the same page regarding the projects budget, timeline, and scope. Having a technical understanding of a project’s platform is very helpful, but manage client expectation does not require senior level technical chops. In fact, it makes more sense for the most senior technical resources to be making magic with the code, not dealing with meeting schedules and budget negotiations.
When talking with development shops about project management opportunities, be sure to clarify what the role of project manager means to them. And be sure to understand your own expectations regarding the type of work you would really like to do.
When looking for prospective employees to fill the role of project manager for your development shop, be sure to take the management of expectations into consideration so you don’t end up with a very skilled technical resource who may be ill suited to manage the human side of your projects.
At Thorsen Consulting, we’re not interested in just filling positions. We work with many development shops around the FileMaker community helping them find talented developers like you. We have our finger on the pulse of the FileMaker industry and we want to help you find the right opportunity so you can maximize your skills and get into your development zone. So let us know what you’ve done and what you’re looking to do, and let us help you find the right place to do it.by