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 the 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." 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 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)
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," says Cantrill. "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."
Real Reviews From Software Developers
+ "A lot of interesting problems to solve in finance and technology (although this will vary by the team you're on - derivatives in my case) Compensation and benefits are pretty good." - Bloomberg L.P. Financial Software Developer (Location Unknown)
+ "Competitive salary and benefits; Exposure to latest technologies; Freedom to innovate; Flexible work schedule." - Citrix Systems Senior Software Development Engineer (Fort Lauderdale, FL)
- "Hard to transition to a new career path; Upward growth opportunities are non-existent; No clearly defined roles." - Research In Motion Software Test Developer (Bellevue, WA)
- "Like all other companies, employees are paying more for health care coverage. The long-term employees who are maxed out on vacation recently lost a day of vacation (25 days to 24 days) and were told that it was a good thing. New people get less pension benefits. You could be a number unless you purposely stand out." - Northrop Grumman Software Developer V (McLean, VA)
Review information and interview questions supplied by Glassdoor.