How to Get a Job as a Software Developer
While jobs are still scarce in many industries, software developers are in "absolute explosive demand," says Bryan Cantrill, vice president of engineering at San Francisco-based cloud computing company Joyent and a member of the advisory board of ACM Queue, a computer magazine for software engineers published by the Association for Computing Machinery. "We're seeing a gap between the number of software engineers we need and the number the education system is generating ... this is a terrific area to invest oneself." This point is supported by the profession's low 2.8 percent unemployment rate in 2012. For those already in the workforce who wish to pursue a career in software engineering, many community colleges offer courses on the basics of computer science, in addition to the classes and programs offered at four-year universities.
Interview Questions Submitted by Real Software Developers
"Please describe the 'diamond problem' with regards to multiple inheritances in object oriented programming." - Hewlett-Packard Software Developer Candidate (Lexington, KY)
"Describe a deadlock condition." - IBM Software Developer Candidate (Ottawa, ON)
"What is a virtual function in C++?" - DemonWare Software Developer Candidate (Vancouver, BC)
|Upward Mobility||fair Average|
|Stress Level||fair Average|
|Flexibility||good Above Average|
What is the Job Like?
Developers generally work in offices, although telecommuting is becoming more common since much of the work can be done remotely. Most jobs are 40 hours a week, although 50-hour weeks are not uncommon. Key attributes of developers include strong problem-solving abilities and an inquisitive nature. "One of the things that makes software engineering so exciting is that it’s constantly changing," Cantrill says. "With every passing decade, there's a slew of new technology that changes the domain ... so you need to constantly be reinventing and educating yourself. It could be viewed as daunting because the domain doesn't stand still. But that's what makes it so satisfying – that you can constantly be learning new things, no matter how senior you are."
Last updated by Nathan Hellman.