In this article, I will give to you an overview of things I learned about project management in last 10 years. Firstly, I’m a co-founder of Kontra. My first touch with project management was 10 years ago when I started my non-profit student organization. We have had several products. During years, I have been a leader in a web development projects (worked with programmers and designers – our in-house team and some freelancers), offline-online projects (students loyalty cards) and marketing projects.
After that, I started Kontra with my colleague and 6 months after we started our startup – FenixApps (games and apps for Facebook). One thing to note: I’m not a web developer.
Who is a project manager? And what is project management?
A project manager is a person who is responsible for project delivery within agreed deadlines and with available resources. In web development agency this is a person between clients and web designers/programmers.
Project management is the discipline of initiating, planning, executing, controlling, and closing the work of a team to achieve specific goals and meet specific success criteria. … The primary challenge of project management is to achieve all of the project goals within the given constraints. (Wikipedia)
As I mentioned before, I’m not developer nor designer (but I tried all of that during my college days). If you want to lead web development team, you should understand basics such as back-end, front-end, hosting, domains, HTML/CSS, databases, etc. In my experience, it is not necessary to understand technology deeply. If we talk about a complex project, you should have an excellent technical team lead or some consulting during project planning.
Like everything else in life, it is all about attitude. If you are dedicated person, you will gain all of the skills that are necessary for leading web development team or teams in any other industry.
Types of projects I used to work
In the last 10 years, I used to work on two types of projects.
Product type of projects – continuous projects with no end
Those projects are projects without a deadline. I’m talking about startup projects, like our fenixapps.com or kontra.agency. We decided to shut down FenixApps after Facebook decided to limit their API for our applications. I never thought this would happen in 2015. This is an example of an agile project. All tasks are in Backlog, and all you do is prioritizing according to your business plans. There are always changes, new ideas, new directions, etc., that’s why prioritizing is so important.
Projects with deadlines
There are some goals, budgets, and deadlines. For example, a web application for a client. We have a deadline which is part of bigger marketing campaign. Inside of this deadline we have milestones with due dates (and tasks with due dates).
First processes than tools
Everybody talks about tools, and I think it is wrong. My opinion is people spend too much energy on tools. Tools always come after you manually define your processes.
I worked with one company, as digital part of a bigger project, on ERP integration – project failed. The main problem in this project wasn’t technical implementation. They had great software with great features. People who worked there were excellent engineers. That company worked with great clients. But there was the main problem – they didn’t understand processes inside of that company and they didn’t understand clients’ business process. Where did they fail?
- First, they should manually study, and understand, all processes before they started with software implementation.
- After that experience, with all possible cases, they can embark on implementation.
People are an important part of every project. Sometimes we choose wrong people for our projects. Sometimes they are not fit. A project manager should react on time and do something. But sometimes you need to fire people. One can learn everything he/she wants, but it’s all about responsibility and attitude.
One important thing I learned about people is that some people or good and some people aren’t good. There is no between. Choose your team wisely.
Specifications, planning and executing
Write down all specifications and tasks. You should define milestones and estimations for each task. It is better to spend more time on specification before project starts than after. Bad specifications are a cause of problems with delivery, and you put pressure on your teammates and yourself.
Each project was specific in my case. In planning, you should always add additional time for an unexpected situation. One thing I would like to suggest is PERT estimation for accurate project (tasks) estimation.
If you want to read more about PERT estimations, check this link.
You chose good team members, specification and planning are finished. Next step is executing. Everything seems good in your plan but in the real world, you always hit some bricks. Every project has some issue and there is no 100% guarantee it will be successful. The most important skill of a project manager is crisis management. Sometimes you should change people, deadlines, tasks, technology, etc.
What about tools?
This depends on organization culture, people, and type of projects. My first tool was paper and email for communication. The most important tool is information visible to a project manager, team, clients and other people who are involved. Everything should be transparent. A project manager is responsible for delivery, each team member is responsible for tasks/milestones and a client wants to track progress.
Tools I used during last 10 years:
- Email (avoid this please)
- Paper and pen
- ActiveCollab, Basecamp, Asana, Trello, Podio, TeamWork
- Google Docs
Any wisdom at the end?
This is the first article in a series of articles about project management. If you want to be a good project manager you’ll have to invest a lot in your skills. Learn from mentors, books, blog webinars – whatever helps.