Luis là một cựu sinh viên đã tốt nghiệp năm năm trước đây. Tuần trước, anh ta quay lại thăm tôi cho nên tôi đề nghị anh ta chia sẻ kinh nghiệm của anh ta với các sinh viên của tôi. Sau đây là câu chuyện của anh ta:

“Tôi tốt nghiệp năm năm trước; tôi đã làm việc như một người phát triển phần mềm trong ba năm thế rồi được đề bạt làm người quản lí dự án. Tôi đã từng quản lí các dự án phần mềm trong hơn 2 năm và đã có bốn dự án; một cái làm không tốt lắm nhưng ba cái đã thành công. Tôi học nhiều trong thời gian ngắn này cho nên tôi muốn chia sẻ kinh nghiệm của tôi với các bạn.

Tôi mới chỉ 28 tuổi cho nên tôi không thể nói rằng tôi biết nhiều vì có nhiều thứ hơn để học. Năm năm trước, tôi cũng như các bạn ngồi trong lớp và tự hỏi tôi sẽ kiếm được loại việc làm gì khi tôi tốt nghiệp? Tôi xin vào vài công ti và hi vọng rằng có thể một công ti sẽ cho tôi phỏng vấn. Tuy nhiên, tất cả họ đều mời tôi tới phỏng vấn và tôi được ba đề nghị việc làm. Từng công ti đề nghị đều có những ưu điểm và nhược điểm cho nên tôi đã hỏi giáo sư của tôi để xin lời khuyên. Thầy nói với tôi: “Làm việc cho công ti lớn được an ninh và thuận tiện nhưng bạn có thể không học được nhiều và mất thời gian để đi lên. Làm việc cho công ti nhỏ có chút ít rủi ro nhưng bạn sẽ học được nhiều. Dễ đi lên trong công ti nhỏ hơn là công ti lớn.” Với lời khuyên đó, tôi quyết định gia nhập công ti phần mềm nhỏ mà chỉ có trên ba trăm người. Như giáo sư của tôi đã nói, có nhiều việc và chúng tôi rất bận rộn nhưng tôi đã làm tốt. Mã của tôi bao giờ cũng sạch không có lỗi nào. Tài liệu của tôi được viết hay và tôi hài hoà với mọi thành viên của tổ. Điều đó nhận được chú ý của người quản lí và chỉ sau ba năm, họ đã đề bạt tôi làm người quản lí dự án phần mềm.

Ý tưởng của tôi về người quản lí dự án là người hiểu cách giải quyết vấn đề cho khách hàng. Điều đó nghĩa là bạn phải làm việc với khách hàng để hiểu nhu cầu của họ rồi tạo ra viễn kiến cho dự án và trao đổi điều đó cho mọi người. Đó là về kĩ năng mềm của trao đổi và xây dựng mối quan hệ. Người quản lí dự án phải biết cách làm việc với các kiểu người khác nhau. Bạn phải làm việc với khách hàng, người bao giờ cũng muốn nhiều thứ nhưng không muốn trả tiền. Bạn phải làm việc với người chủ công ti, người bao giờ cũng gây sức ép lên việc đáp ứng lịch biểu. Bạn cũng phải làm việc với những người phát triển, người muốn làm mọi thứ hoàn hảo nhưng không chú ý mấy tới lịch biểu. Điều đó là không dễ nếu bạn không có kiên nhẫn và động cơ cho thành công.

Trong khi người quản lí dự án giỏi phải có kĩ năng kĩ thuật nhưng tôi thấy rằng tôi cần kĩ năng doanh nghiệp và kĩ năng mềm nhiều hơn. Vì trường không dạy những kĩ năng này, tôi phải tự mình học chúng cho nên tôi đã học bằng cách quan sát cách những người khác làm điều đó. Tôi đã quan sát cách những người quản lí khác giải quyết với khách hàng, người quản lí và thành viên tổ. Một số người làm tốt nhưng một số làm không tốt. Khi tôi thấy cái gì đó mà tôi không biết, tôi hỏi cho nên tôi đã học bằng việc hỏi câu hỏi. Tôi biết rằng mọi dự án đều có ngày bắt đầu và ngày kết thúc cho nên tôi bao giờ cũng tập trung vào ngày kết thúc và sản phẩm mà tôi phải chuyển giao cho khách hàng. Là người kĩ thuật tôi biết rằng tôi phải giải quyết các vấn đề nhưng là người doanh nghiệp, tôi biết rằng tôi phải làm điều đó trong giới hạn thời gian nữa. Tôi biết rằng thành công của dự án không nhất thiết tới chỉ từ việc đáp ứng lịch biểu, nhưng cũng có cả chất lượng tốt nhất để đáp ứng cho mong đợi của khách hàng.

Điều gì tôi đã học được cho tới giờ trong thời gian ngắn ngủi của tôi? Thứ nhất tôi đã học về cách làm việc với con người. Mọi dự án đều cần người phát triển phần mềm, người thiết kế, viết mã, và kiểm thử cái gì đó. Họ cũng phải thay đổi và sửa mọi thứ. Chính con người làm cho dự án thành công cho nên là người quản lí dự án tôi học cách đối xử với họ một cách công bằng. Tôi không coi bản thân tôi là chủ của họ mà là bạn của họ. Chúng tôi làm việc cùng nhau như một tổ nơi mọi người đều bình đằng. Tôi bao giờ cũng giải thích điều tôi đã làm và thường hỏi ý kiến của họ. Khi dự án đang bị áp lực, tôi thực tế đã giúp trong viết mã và kiểm thử cho bất kì ai cần nhất để giữ cho mọi sự tiến triển. Tôi đã học bằng việc đối xử với mọi người với sự kính trọng và lắng nghe mối quan tâm của họ. Tôi biết rằng nếu họ thích làm việc thì tôi sẽ có nhiều cơ hội thành công hơn. Tôi có thể có ý tưởng hay hoặc giải pháp hay nhưng không có người giỏi, tôi không thể làm được gì. Tôi coi kĩ năng con người là quan trọng nhất trên tất cả.

Có nhiều cuốn sách về quản lí dự án nhưng không ai có thể học được từ sách và trở thành người quản lí giỏi. Không ai có thể là người quản lí giỏi nếu họ không thất bại ít nhất vài lần khi quản lí dự án. Lần đầu tiên bạn quản lí dự án, bạn phạm nhiều sai lầm. Mỗi lần bạn làm dự án mới, bạn cũng phạm nhiều sai lầm. Đó là cách duy nhất để học những bài học quan trọng và thu được kinh nghiệm. Tất cả chúng ta đều bắt đầu nghề nghiệp của mình với đầy tham vọng và chúng ta nghĩ chúng ta có thể làm được nhiều nhưng đó là sự ngây thơ của thanh niên. Chúng ta không biết cái gì là có thể và cái gì là không thể. Qua thời gian, bạn bắt đầu học nhiều về quản lí dự án khi bạn thực hành nó và đây là chỗ bạn thực sự học cái gì đó. Bạn bắt đầu hiểu cái gì là quan trọng và cái gì không rồi làm kết nối giữa các sự việc dường như không hiển nhiên cho bạn nhưng chúng là rất quan trọng. Bạn học lắng nghe người khác về ý kiến của họ. Chỉ bằng việc lắng nghe và sẵn lòng học thì bạn trở thành giỏi lên như người lãnh đạo. Khi mọi người sẵn lòng làm việc cho bạn, hay thậm chí tìm bạn xin lời khuyên thì bạn thành công.

Tôi được nuôi dưỡng về luân lí, với đạo đức cao và ý thức xã hội. Bố mẹ tôi đã dạy tôi phải trung thực với mọi thứ và tạo ra giá trị làm cho thế giới thành một chỗ tốt hơn. Tôi biết nhiều thanh niên chỉ nghĩ về làm tiền và không cái gì khác và đó là lí do tại sao họ gặp khó khăn trong đời họ. Họ thường chuyển việc làm để kiếm thêm chút tiền. Họ nhảy từ việc nọ sang việc kia mà không học được gì cho đủ tốt. Sau vài năm, họ có lương cao nhưng không có kĩ năng thì cuối cùng họ lo lắng về mất việc làm. Tôi tin rằng bằng làm việc chăm chỉ và thường xuyên học những điều mới, tôi có thể làm cho bản thân tôi thành có giá trị hơn cho công ti tôi đang làm việc. Tôi bao giờ cũng có thái độ này khi tôi là người phát triển và tôi vẫn cảm thấy đích xác như vậy ngày nay.

Tôi cảm thấy rất tự hào gọi bản thân tôi là người quản lí dự án. Sự kiện là tôi không hoàn hảo bởi vì tôi vẫn đang học nhưng ít nhất ba dự án cuối cùng mà tôi đã quản lí đều đã được chuyển giao cho khách hàng đúng thời gian, trong chi phí và không có vấn đề gì. Nhiều người phát triển muốn làm việc với tôi và tổ của tôi đang phát triển từ hai mươi tới năm mươi người. Dự án tiếp của tôi là thách thức nhưng điều đó sẽ không dừng tôi tiếp tục việc học của tôi và đi tới những kết quả tốt. Lời khuyên cuối cùng của tôi: Tất cả các bạn đã chọn phần mềm làm lĩnh vực học tập và đây là lĩnh vực với cơ hội tuyệt vời. Tất cả các bạn có nghề nghiệp mà sẽ kéo dài nhiều năm trong tương lai. Phát triển nghề nghiệp là cuộc hành trình lâu dài cho nên giữ việc học, giữ thái độ tích cực và khiêm tốn thì bạn sẽ làm tốt.”

—-English version—-

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.”