Sharing experience

Luis is a former student who graduated five years ago. Last week, he came back to visit me so I asked him to share his experience with my students. Following is his story:

“I graduated five years ago; I worked as a software developer for three years then got promoted to project manager. I have been managing software projects for over 2 years and had four projects; one did not do well but three were successful. I learned a lot during this short time so I would like to share my experience with you.

I am only 28 years old so I cannot say that I know a lot because there are much more to learn. Five years ago, I was just like you sitting in class and wondered what kind of job should I get when I graduate? I applied to several companies and hoped that maybe one would give me an interview. However, all of them called me for interview and I got three job offers. Each offered company had certain advantages and disadvantages so I asked my professor for advice. He told me: “Working for large company is secured and comfortable but you may not learn much and it takes time to move up. Working for small company is little risky but you will learn a lot. It is easier to move up in small company than big company.” With that advice, I decided to join a small software company that only had over three hundred people. Just like my professor said, there were lot of works and we were very busy but I did well. My code was always clean without any defect. My document was nicely written and I got along well with all team members. That got managers' notice and just after three years, they promoted me to software project manager.

My idea of project manager is a person who understands how to solve problems for customers. That means you must work with customer to understand their needs then create a vision for the project and communicate it to everyone. It is about soft-skills of communication and relationship building. A project manager must know how to work with different types of people. You have to work with customers, who always want a lot of things but do not want to pay money. You have to work with the company owner who always put pressure on meeting schedule. You also have to work with developers who want to do everything perfect but do not pay much attention to the schedule. It is not easy if you do not have patience and motivation for success.

While good project manager should have technical skills but I found that I need business skills and soft-skills more. Since the school does not teach these skills, I must learn them by myself so I learned by watching how other people do that. I observed how other project managers deal with customers, managers and team members. Some did well but some did not. When I saw something that I did not know, I asked so I also learned by asking questions. I know that every project have a start date and an end date so I always focus to the end date and the product that I must deliver to customers. As technical person I know that I must solve problems but as a business person, I know that I must do that within a limited time too. I know that the success of the project does not necessarily come from just meeting schedule, but also having the best quality to meet customer's expectation.

What have I learned so far in my short time? First I learned about how to work with people. Every project needs software developers who design, code, and test something. They also have to change and fix things. It is the people that make the project success so as a project manager I learned to treat them fairly. I did not consider myself as their boss but their friend. We work together as a team where everyone is equal. I always explained what I did and often asked them for opinion. When the project was under pressure, I actually help in code and test to whoever needs the most to keep thing progressing. I learned by treating people with respect and listen to their concerns. I know that if they like to work for me than I will have more chance for success. I can have good idea or good solution but without good people, I cannot do anything. I considered people skill is the most important skill over all.

There are many books about project management but no one can learn from books and become good manager. No one can be good manager if they do not fail at least few times when managing project. The first time you manage a project, you make many mistakes. Each time you do a new project, you also make many mistakes. It is the only way to learn important lessons and gain experience. We all begin our career full of ambitions and think we can do a lot but that is the naivety of youth. We do not know what is possible and what is impossible. Over time, you start learning more about project management when you practice it and this is where you really learn something. You start to understand what is important and what is not then making connections between things that seems not obvious to you but they are very important. You learn to listen to others for their opinions. Only by listening and willing to learn then you become better as a leader. When people are willingly to work for you, or even seek you out for advices then you are successful.

I was raised ethical, with high moral and socially conscious. My parents taught me to be honest with everything and create value that makes the world a better place. I know many young people only think about making money and nothing else and that is why they have difficulty in their lives. They often switch jobs to get a little more money. They jump from job to job without learning anything well enough. After few years, they have high salary but no skills then eventually they worry about losing job. I believe that by working hard and constantly learning new things, I can make myself more valuable to the company that I work for. I always have this attitude when I was a developer and I still feel exactly the same today.

I feel very proud to call myself a project manager. The fact is I am not perfect because I am still learning but at least the last three software projects that I managed were delivered to customer on time, within cost and without any problem. Many developers want to work for me and my team is growing from twenty to fifty people. My next project is challenging but that will not stop me from continuing my learning and come up with good results. My last advice: All of you have selected software as a field to study and this is a field with wonderful opportunities. All of you have a career that will last many years in the future. Developing career is a long journey so keep on learning, keep a positive attitude and be humble then you will do well.”

Sources

  • Blogs of Prof. John Vu, Carnegie Mellon University