Working on a world-class web project is the most intense, but interesting part of this industry. The main motivation is to be part of something that will influence the world. Your work is going to be used by millions of people, so it is important to get it done well. Working on a large project is tough, requires courage and is filled with challenges, but what all of this really means? Is it about commitment? Working hard? Working with the right people? Working only with experts? I think is all of the above with some key differentiators expressed below.
Know your own limits
Before committing to a huge project, whether your company is big or small, you should be highly aware of your skills. Knowing your skills might be an easy thing to say, but only experience will tell you what skills your team really has. When we entered into this huge project, we wanted to make sure we were ready. There is always a risk and it has to be a challenge; however, knowing your team’s skills means talking to your top talent and analyzing the situation and possible scenarios. When we got the opportunity, we sat together and rolled out what meant to make this project happen. As a leader, I needed to know several things. First, if we had the necessary staff to make it happen. Second, if we had hard workers that were willing to learn along the way and were going commit to the success of the project. Third, if we had a senior developer that could execute the most complex parts of the site; and fourth, if we had the support from other members of the company to teach, support and mentor those who were going to face a challenge.
The team is key, but the coach is who makes it happen
Obviously by now it is clear that we had the right team indeed. However, is never as simple as it sounds. As in any team, it needs to have balance. Each individual is there for a reason and the “coach” moves the wheel to make the team deliver. The role of the project leader is even more important than what it is usually given credit for. A project leader selects the team carefully, knowing the three type of players: star players, hungry to be a star player and hardworking players. A project leader sets the pace and culture of the project and is fully committed. The project leader knows each member’s skills and abilities and uses this expertise to the project’s advantage. Let’s say for example a project has a great team of developers but no clear goals for the week have been defined. Then, it doesn’t matter how good the team is, it’s not going to perform well. This point is key when working on a large scale project. The leader has to organize the project in such a way that the strategy is crystal clear. When I am leading a project I always prioritize what is most visible to the public, and then move down. For example, my strategy was to setup the homepage first and then the global elements. This strategy doesn’t apply to all projects, but on this specific case it did, because the strategy was to set a clear, straight forward goal for the team that could also serve as a showable product for the client.
Be brave but smart
The next step into any big project is to face the unknown. I don’t think there is any company in the world that has it figured it out when dealing with a challenging project. And if they do, it means is not a real challenge ☺. Therefore, if the opportunity is there, be brave but smart. Being brave is not being like Jack Bauer jumping to the ground full of terrorists and start shooting, actually that is the best way to fail, but being brave is to face the risk and unknowns smartly by strategically, taking small steps that will help you overcome the unknown and conquer it. For example, the team I was leading didn’t know enough about performance when we started a project more than a year and a half ago. However, we were not afraid by it, so we embraced the challenge by asking smart questions, doing research and asking for help. When you don’t know something, it’s ok to ask for help to other coworkers, peers and even the client. If you hide behind pride it can be quite costly and can end up damaging the project and relationship.
It’s a lot about managing perception and expectations
After working with the correct team with the right skills, there are two key ingredients on any enterprise level project that leads the execution to success. The ingredients are called perception and managing expectations. The Project leader needs to be: a good communicator and has to be technically savvy. If the tech lead doesn’t know enough about the technical portions of the project, the team players will not know how to translate the business needs to the daily tech tasks. Also, it becomes easy for them to work on the wrong tasks by prioritizing wrongly. The project leader needs to have a deep understanding of technology, so the goal of the week is monitored and priorities can be tweaked every day if necessary.
When it comes to perception, tech leaders need to show how progress is seen by the client and developers. Don’t get me wrong, there is no short cut to the amount of work it takes to finish a project, but it is very important that the client and stakeholders’ perception is well accompanied by what it seems as complete. For example, if the project has two parts where one part is a complex algorithm that will take two weeks of a developers time and the second part will shows a cool effect on the homepage, as a leader you have to do both, but make sure you have the visual effect ready first before the algorithm. That way the client who is not technical can “see” something. If you are in a position where you can not show anything functional you can still show the process. Use tools like Slack mixed with Github so every day is filled with progress. At the same time, communication has to be constant, progress and status should be updated every two days and the client should have a clear view of the project.