Software development work

A mother wrote to me: “My daughter wants to study Computer Science and works as Software developer but I do not want her to spend most of the time in front of a computer. I think Business and Banking would be better for a young girl because she will have more time to meet people. I really do not know what software developer really do. Please advice.”

Answer: You need to know why your daughter wants to study Computer Science and what motivates her to pursue this career. If you listen to her carefully, you may change your mind. Today Computer Science is one of the best careers in the world and it is expected to grow faster than any other fields. I think your daughter is making the right decision in planning her future because with a degree in Computer Science, she will NOT having any problem finding job (Note: I cannot say that with degrees in Business or Banking at this recession time).

There is a wrong belief that software developers spend all the time in front of a computer. In fact, developers do have many opportunities to travel to meet customers to discuss software requirements and maintenance. Of course, developers build software products and programming is a part of the work but NOT the only work. Developers solve customers' problems by understand their needs and develop software solutions. They design, code, test, debug and maintain the software over a period of time.

One thing I can say about software work is it is never bore. Depend on the size of the company (Big or small) the types of company (Provide products or services); the organization structures (Hierarchical or flat); the management system (centralize or decentralize) the work may vary. However one thing is common: Everybody works in team and teamwork is very important. Depend on each phase of the project, the work changes. During coding or testing phase, developers spend their days writing code to create functionality, while others may spend their days identifying and fixing bugs. During architecture and design, developers spend their days in meetings to design the best system architect and that is why soft-skills such as teamwork, communication, listening, presentation, and leadership are important. During requirements or project planning phase, developers often spend time meeting with project managers, customers, and others in the company who help determine the direction of the software project.

Developers build software by write code using programming languages such as Java or C++ (These are the most popular languages often taught in school) but there are more such as C, Objective C, Visual Basic, PHP, Ruby, Python, JavaScript, Perl, SQL etc. If they are good with any of these languages, they will not have any problem finding job in the software industry.

Compare with other bachelor's degrees, computer science degree probably has the best salary. Software developers are in extremely high demand, and the market just keeps getting hotter. While there are different reports about the amount but on the average, salary for entry level of graduates with a bachelor's degree in computer science ranges from $75,000 to $92,000 dollars per year in the U.S. (2012 data). There are many advancement opportunity in software development, as many developers would eventually move into management at some point. A software project manager can command a salary range from $120,000 to $180,000 (2012 Data). Some developers may start their own companies or become employees at startups. Startups often give employees stock options as rewards and when they become successful their employees can become millionaires such as the cases of Apple, Microsoft, Google and Facebook etc... Sometime startups may get acquired by bigger companies for a huge amount of money and startups employees do receive incentives in percentage of the acquisition (usually in million dollars per person). When Facebook acquires Instagram, a small startup that has 12 employees for $ 1 Billion dollars, all employees became “instant millionaires”.

Computer science is a good career for young people, both men and women because there is high demand in every country. Developers do have a choice either to work in their home country or travel and work in other countries due to the critical shortage globally. The work is always challenging and exciting and you get high salary for your work. However since technology is always changing, you will need to adopt a lifelong learning attitude to keep up. Software work requires a lot of meetings, communication, and teamwork so beside technical skills, you will also need soft-skills.

Sources

  • Blogs of Prof. John Vu, Carnegie Mellon University

You may like