In choosing a career I
thought it would be best to choose a job with the following qualities: a career
I have significant personal interest in, stability for supporting a family, easily
found work, the potential to influence people, and the need to be creative with
my work. Computer software engineering involves
each of these key qualities, so I decided to explore and research this vocation
through my graduation project.
Computer software engineering can be broken
down into two categories, systems engineering and applications engineering. Applications
software engineers program general software applications for use within a
certain system. Some of the most common programming languages used by
applications engineers include C++, C, Python, or Java (“Computer Software
Engineers and Computer Programmers”). Systems software engineers program the
electronics at a machine’s most fundamental level of processing. These people
program the elements of machines in which the most basic applications run.
A
bachelor’s degree in computer science or computer engineering is strongly
recommended to enter the software engineering field. While not required, it
certainly helps job-seekers find more work and increased pay. (Steven
Leiphart) In order to progress up the pay
scale computer software engineers either need to have extensive experience in
the field or to have taken business/leadership classes, and to reach the
highest rung on the job ladder, often an M.B.A. is required (“Computer Engineer
Sample Career Path.”) in order to progress to positions like vice president or
C.E.O. of a large company.
In
addition to a having a bachelor’s degree, a software engineer should have certain
abilities necessary to computer software engineering. He/she
must be logical, so they can find
common sense solutions to problems. He/she
must have math and computer skills, because they will be learning many new
processes concerning computers and programming languages.
He/she should be comfortable with technology,
because they will be working with it every day due to the nature of this job. Problem-solving skills are a necessity
because half the process of programming software is debugging. Debugging means fixing
the problems of software that has been written.
This person must have an understanding of business to succeed, because
they will always be working with business and making decisions of their own
related to business (“Computer Engineer At a Glance.”).
Without these skills and characteristics, a
person will be severely limited in the field of computer software engineering,
as these are all essential things to completing the work of computer software
engineering successfully.
There are many different job titles
one may possess progressing up the ladder of a computer software engineering
company. With increased job experience comes rising up the ladder, which
generally yields an increase in pay. A
beginner is usually named junior computer engineer, which requires a bachelor’s
degree in computer engineering or something similar. The
average earnings for a junior computer
engineer are from $50,000 to $70,000 a year.
The responsibilities of this role are largely assistance based under the
watch of experienced programmers. Then
with about 3 years of experience he/she becomes a (standard) computer engineer,
yielding an increase of about $20,000 to $40,000 dollars a year in income, and
also yielding an increase in responsibilities that include designing more
software, leading engineering teams, and making sure projects are completed on
time. A third level above the standard
computer engineer is engineering manager. That step requires at least 5 years
of work experience and business courses/management training (in addition to the
bachelor’s degree. This usually boosts
the newly promoted engineering manager’s salary of $80,000 to $145,000 a year.
His new responsibilities involve managing an entire department or division of a
company, as well as leading teams of engineers.
Quintessentially, there is the potential to become a chief executive
officer, or C.E.O. This major step requires much hard work, at least 10 years
of experience, and often an M.B.A. Being
the chief executive requires managing of the business affairs of the company
and help planning the company’s business strategy. This position also offers a
large jump in salary, anything from $100,000 to $150,000 or more a year is
possible. (“Computer Engineer Sample
Career Path”). Therefore, no matter
where you are working within computer software engineering, you’ll be required
to have a bachelor’s degree in computer science or engineering.
Every role offers a large salary, which often
increases with experience. Another
potential business path for a computer software engineer to take is to be a self
employed contractor, which involves finding and doing
your own work, being your own boss. So
long as this person can remain on task while working from home or wherever they
are without higher ups pounding down on them this is fine (Steven Leiphart). Although this role is subject to higher taxes
and a less predictable amount of work, one can stay home and work in their
pajamas, so in making this decision one must weigh the benefits and
consequences.
I decided to pursue computer software
engineering for my graduation project for a couple of major reasons.
It has an extremely positive job openings outlook
over the coming years, “Employment of computer software engineers is expected
to increase by 32 percent from 2008-2018, which is much faster than the average
for all occupations” (“Computer Software Engineers and Computer Programmers”). This
should make it quite easy to find a job in the field wherever I want to
live. Another major reason is that I’m
looking for a career that I can be creative with, and computer software
engineering is a very creative process in which the programmer creates his software from start to
finish, designing it to be intuitive and clean.
I also would like to have a job that can influence people, and with this
career I can create programs that make peoples’ lives easier.
The work is reliable because so much of it will
be around, and computer software engineering brings in a solid chunk of change
to support a family if I happen to have one.
These are all very attractive qualities of this career.
I job shadowed an embedded systems
programmer named Steven Leiphart for 9 hours one day. He
programs machines at their simplest level
typically using the language of C. He is
an independent contractor, and when I arrived to the office in his house, he
had recently received a new project that cleans the filters in dialysis
machines. His goal was to fix the
program somebody else wrote so that the initial startup graphic would not be
messed up when coming on screen, and to get all of the menus and buttons
working. We ended up trying to figure
out how to program the screen to show the graphic correctly all day.
Simply guessing what may be the error, making
a hypothesis, testing its solution and seeing if it made a difference was our
repair process. Often we were shooting
in the dark with our efforts to fix it, but that’s sometimes what one must do
to figure out what’s wrong, and it’s where the problem solving skills come in
especially handy. Finally we figured out
what was wrong and got the screen working, but it took us nearly all 9 hours of
the day.
I am very happy to have had the
chance to explore this niche of engineering so thoroughly.
The job shadow especially gave me a deep
understanding of what it’s like to do this as an everyday job.
I learned it takes patience with some highly,
highly technical processes (I didn’t understand what Mr. Leiphart was talking
about half the time, saying things like “the stack is wrapping, so we have to
increase the number of processing bits used so that it doesn’t roll
over.”) He would explain what he was
talking about, but I still only had a vague understanding of it.
And he has been doing this for nearly 25
years — that kind of knowledge can’t be passed on in one day.
Extensive knowledge in something that not
many people know how to do is the key to making lots of money, Mr. Leiphart is
very well off with his work. And any
hardworking software engineer has the same potential to make a very nice
living. Before I did the graduation
project, I had a dim idea of what computer software engineers do, and I was
quite interested in pursuing this field myself.
However, through the job shadow, interview, and research about this job,
I realized that I would rather go into another field where I get to work more
directly with people, expressing thoughts and ideas, and the potential for a
type of artistic expression. Although
this would be very interesting work, I am looking to pursue a career that is
simply more personal.
Works Consulted
“Computer
Engineer Sample Career Path.” Careercruising.com. Accessed 27 October 2010.
<http://www.careercruising.com/Careers/JobDetails.aspx?LoginID=233bd160-ee16-4c4b-8090-60c966f57a07-&OccNumber=106&field=CareerPath>.
“Computer
Engineer At a Glance.” Careercruising.com. Accessed 27 October 2010.
<http://www.careercruising.com/Careers/JobDetails.aspx?LoginID=233bd160-ee16-4c4b-8090-60c966f57a07-&OccNumber=106&field=CareerPath>.
“Computer
Software Engineers and Computer Programmers.”
Bls.gov. 17 December,
2009.
Accessed 27 October 2010.
<http://www.bls.gov/oco/ocos303.htm>.
Leiphart,
Steven. Personal interview.
7 October, 2010.