Letter from a graduated student

As professor, I often ask graduated students who are now working to share their experiences and give advices to students who are still in school. Last month, I send out an email to remind them and I received several replies. I like to share with you the letter from a former students:

“I graduated with a degree in software engineering last year. I got so lucky because I had several job offers in my last year in college. I started to interest in computer because I like to play computer games. I am very good in “World of Warcraft”, “Doom”, and “Grand Theft Auto”. Because of this interest, I took several programming classes in high school. Let me give you an advice: Do NOT wait until college to learn programming. You need to know how to program before you enter a computer program in college, else you cannot compete with students there. Computer programming is easy, it took me only few months to master the Java language. Since I knew Java, it was not difficult to learn C and C++. If you do NOT take this advices, other computer students in college will crush you. Computer courses are highly competitive and only the best will survive. By preparing ahead of time, you will succeed. High school works was easy and gave me a lot of time, so by learning programming earlier, it made things much easier for me in college”.

“Now my career consists of develop software applications to support the business of the company. I work in a team of ten people, most are at my age so we share many common interests. We all play computer games and read “Manga” comic books. Basically, we get paid to do what we like, playing with computer. In this job, we can also listen to music all day. We all have MP3 and earphones so nobody care what kind of music that we listen to, as long as we do not bother other people. My manager is a young woman, only few years older than us. She said as long as we get the work done, she will not bother us. However, if we do not do quality work, we will hear from her soon. Some of my team members do not like to have a woman as manager but I have no problem. She is like a sister to me because I also have a sister at home, so I do not mind.”

“In my company, most business managers are men but in the information technology group, half of managers are women. My manager told the team that currently, there are more women study Information System Management (ISM) than men. This was different from Software Engineering because in my class of 45 students, we only had 6 women. My manager spends most of her time in meetings with customers and senior managers so we only see her maybe once or twice a week, usually in team meeting. The meeting is always on Monday where she shares with us on what is happening in the company, what the users or customers want from us and what we need to do that week. She reviews some projects and gave comments on what should be done. Her directions are clear, concise and to the point and I always admire her communication skills. She is tough when things did not happen as expected but she is gentle when things are fine. However she never yells at us or shows any emotion. In contrast to another manager who is a man. I heard him yelling, show his anger to his team when things was bad so his team members are afraid of him. Many told me that they hated him and wanted to transfer to our team. I think woman are much better as manager than men.”

“Occasionally, I have to analyze the business needs to see if a solution is the best one. This require several phone calls to customers to verify requirements. Because I took the Requirements Engineering class, I know how to analyze and prioritize what customers need. I know how to determine Return On Investment (ROI) and gather additional users requirements that were not documented in the Software Requirement Specification (SRS). Most of my team members cannot do that, they studied Computer Science, they knew more about mathematics, equations and algorithms but they do not learn this requirement engineer skill. That is why my manager is very happy, she gave me better raise in salary than the rest.”

“My work also involves in design database, designs application within.NET 4.0 and delivers software every 2 weeks. We follow an Agile methodology called Scrum to ensure what is created is what the users actually want. Contradict to what I believe, my work does not require a lot of programming. I think it is about 35% programming and 65% problem solving. Because I took software design and system architecture courses and did well in them, I can do most this work in my sleep.”

“Overall, I think that having the right college training is very important to your career. When I was a student, I thought programming is everything but now I know that it is only a tool and you need more than a tool to succeed in industry. Even I only work for a year, I already know that the process that I interact with customers and the way that I analyze the needs are important. The method that I architect the system and the way I design the solutions are critical. That is why I believe Software Engineering is a better choice.”

“I love being a software engineer. The best and easiest job I can think of. But I can see that it seems very complicated to someone who does not have a good background. If you are a good problem solver, have a strong analytical skills and have a good attitude about learning new thing, you can become a software engineer. Today there are also plenty of job openings in this field for you to apply. What are you waiting for?

Sources

  • Blogs of Prof. John Vu, Carnegie Mellon University