03.11
Career Focus: Software Engineering
By John R.
Platt
A few weeks ago, the IBM-built supercomputer
named Watson made worldwide headlines by beating several human
contestants on the game show, Jeopardy!. It's a feat that
would not have been possible without the software engineers
behind the scenes. [Editor's Note: On Monday, 28 February,
physicist and Congressman Rush Holt (D-N.J.) saved face for
humans by topping Watson in the first of three rounds of an
exhibition Jeopardy! match.]
CAREER PROFILES
|
Sandra Robinson
Occupation: |
Software
Engineer |
Experience: |
30+
years |
Employer: |
Lockheed
Martin |
+ See
Sandra's full
profile | |
 |
Phillip LaPlante, PE
Occupation: |
Professor of Software
Engineering |
Experience: |
28
years |
Employer: |
Penn
State University |
+ See
Phillip's full
profile | | |
"Software engineering is one of the fastest
growing fields in the world today," says Ben Amaba, worldwide
executive for IBM Complex Systems. "What we're seeing across
all other disciplines is that software is becoming an
invisible thread tying all disciplines together. Software is
now embedded in almost all devices, mechanical devices all
talk with each other, and developing products using software
is faster and poses fewer risks than physical prototyping."
Why Software Engineering is Important
Software engineering was recently dubbed the best
job of 2011 by career site Career Cast, and magazines like
Forbes and Fortune have also extolled the
virtues and importance of the field. Heck, even toy company
Mattel recently introduced
Computer Engineer Barbie to help inspire young girls into the
profession.
So why are these employees so valuable? Look no
further than the often-cited Standish Group "Chaos"
reports, which most recently (2009) found that
only 32% of software projects are, in their terms,
"successful." The Standish report found that 44% of software
projects were "challenged," usually involving cost over-runs
and late delivery, and a full 24% of projects failed. Since
companies often can't afford these costly delays or failures,
engineers who operate by a set of standard development
principles, such as those defined in the Software Engineering
Body of Knowledge (SWEBOK), can help keep costs down and
products flowing out the door.
"Software engineers can also have higher
innovation rates," says Amaba, "because they aren't tied to
the physical world. Their only constraint is time. Other areas
are more limited by materials and manpower."
The Field
According to the Bureau of Labor Statistics
(BLS), the number of employed software engineers has grown
more than 25 percent in the past decade, from 745,000 in 2001
to 1,206,000 in 2010. The earning potential for software
engineers is also strong, with both computer systems and
applications software engineers averaging more than $90,000 in
annual wages in 2009, according to BLS data (see table below).
Among all other engineering fields, only chemical engineers
averaged higher annual wages in 2009 at just over $96,000.
 Source: US
Department of Labor/Bureau of Labor Statistics (Occupational
Employment Surveys)
That doesn't mean there are jobs for everybody,
but the prospects are good for software engineers, and they
have one of the lowest levels of joblessness among engineering
professions. According to the BLS, software engineering
unemployment was 4.6% in 2010, compared to 5.4% for electrical
engineers.
Chris Ruoff, Sr. Manager of Sales and Channel
Development for the IEEE Computer Society points out that
professional certifications, like the IEEE Computer Society's
Certified Software Development Associate and Certified
Software Development Professional, are now becoming
recommended or even required by companies seeking to hire
software engineers. "More and more organizations are
recognizing the benefit of hiring someone who has a solid
foundation in software engineering and provides a lower risk
as a new hire." The SWEBOK Guide is used world-wide in
academia and in industry and provides a great resource to
build this foundation.
What Employers are Looking For
"Software engineers need good communication
skills, both spoken and written," says Amaba. "They need an
analytical capability, and they need to be able to manage a
project from end to end while working well with their
colleagues." He says employees also need to be able to keep up
with rapidly changing technologies. "Also, the more they know
about the social sciences, physical sciences and mathematical
sciences, the better they will be able to succeed."
"As a hiring manager, I'm looking for candidates
to show me two things: that they are smart and can get things
done," says Jensen Crawford, director of engineering for Fetch
Technologies. "The former includes being able to communicate
about, analyze and solve problems. The latter is being able to
deliver those solutions." If you're looking for experience,
Crawford recommends a few steps, especially for anyone who is
still in school: "Contribute to open source projects, work as
an intern, and enter programming contests," he says. "Having
proof that you delivered software will give you a real
advantage over other candidates."
Software engineering will be of great need in a
number of fields in the coming years, says Bruce Douglas,
chief evangelist for IBM Rational. A few examples include
probability and statistics, environmental engineering,
economics, ethics, and electric vehicle mechanics. "Software
engineers with knowledge and fundamentals on electric vehicles
will be in better position to create complex battery systems,
electric drive units and cabin electronics," he says.
"What we have found is you need product-oriented
people," says Arvind Srinivasan, chief technology officer and
co-founder of ZL Technologies. "They need to be able to work
on a project from A to Z and solve problems at every level,
not just be able to write code. We hire people with a
mathematical background and a strong engineering sense."
Srinivasan says one of the main things he wants to see from a
job candidate is if they have already shipped a product. "If
not, it doesn't matter how well you write code."
A software engineer is the best support
engineer, says Srinivasan. "They can support what they write,
find a problem and fix it. They have a good sense of what the
customer is thinking and can respond to customer requirements.
They also understand the quality assurance process and make
sure that products are of high value."
All of the people I spoke with this article
discussed how important software engineering is not just for
today, but for the future. "Software engineering is going to
change the world," says Amaba. "It's becoming embedded in the
devices we all use every day." Srinivasan agrees: "Software
engineering is the nuts and bolts for the entire future. You
need software for everything these days. It's deeper than
deep. I think it's going to become the new English."
IEEE Software Engineering Resources
Don't miss the recent Today's Engineer
article, "IEEE-USA
and IEEE Computer Society Cooperate in New Professional
Software Engineering Licensure Initiative."
You can find information on the IEEE Computer
Society's certification programs here.
The Guide to the Software Engineering Body of
Knowledge (SWEBOK) is available here.

John R. Platt is a freelance writer and
frequent contributor to Today's Engineer,
Scientific American, Mother Nature Network and
other publications.
Comments may be submitted to todaysengineer@ieee.org.
|