This is the time of year when millions
of 17-year-olds are starting to send in their college applications.
Many of them are wondering: what the hell should I do with my life?
You don't have to decide that by the time you are 17, but it
certainly helps to have an idea of your future career when you are
considering which college to apply to.
In this post I will discuss what I
think is a very sound career choice for the average 17-year old: the
career of software development. I'll include some inside information
that you won't get from the average career guide.
Software development is a career that
can pay very well. If you live in a major city and have three to five
years experience, you can easily make between 40 and 60 dollars an
hour doing software development. But what is it really like to work
as a software developer, how can you get into the field, and what
kind of person will make a good software developer?
First, let's consider: what type of
person makes a good software developer? Even though software
development involves working almost constantly with computer
languages, do not worry if you did poorly when studying languages in
school. I worked for a long time as a software developer, and got
abysmal grades when studying Latin and Spanish in high school.
Computer languages are very different from natural languages such as
English and German, and your skill with such languages has nothing to
do with your probable success with computer languages.
It is also perfectly possible to be a
successful software developer if you are poor in math. I flunked
trigonometry in high school, but still worked a long time as a
software developer. Nowadays almost all computer languages have “on
the shelf” functionality that allows a computer programmer to
perform almost any mathematical task more or less effortlessly. So
even someone who is “all thumbs” in math can very easily do all
kinds of mathematical tasks in a computer program he is writing.
What is the single greatest predictor
of your ability to succeed as a software developer? The answer is:
creativity. If you are a very creative person, you will probably
enjoy being a software developer, and will probably succeed at the
job. If I were a hiring manager hiring someone for a software
developer job, I would be more likely to hire someone who had written
a novel or a collection of short stories than I would be to hire
someone who got A grades studying math or foreign languages.
Why is creativity so important in
software development? Because when you write code you are again and
again facing a blank page that you are supposed to fill in by using
your own creativity. To some people that blank page is terrifying.
But to other people, particularly creative people, that blank page is
enthralling.
How can you get into the field of
software development? Nowadays you will see almost all job
specifications for software developers asking for a BS degree in
Computer Science. However, my experience has been that almost no one
cares where you may have got your degree in Computer Science, and
probably a large fraction of hiring managers don't really care
whether you have a major in Computer Science. There have been very
many successful programmers who did not have bachelor's degrees, and
very many successful programmers who majored in something other than
Computer Science. You can probably get by with a minor in Computer
Science or Information Science, although a major in Computer Science
might give you the best chance of getting a job.
Hiring managers for software
development jobs care about how much coding you have done, and how
well you are able to answer technical questions about the details of
the type of programming you are doing. They don't seem to care much
about where you went to college. Therefore it may be a bad idea to
borrow money to go to some prestigious college and study Computer
Science. A person who goes to an unglamorous state college (and who
knows a computer technology very, very well) may have a better chance
of getting a job than someone who went to a prestigious university
and does not know the technology very well.
How is it is that you can try out
whether software development is a good career for you, before
spending a large amount of money on a Computer Science degree? What
you need to do is to start writing some computer programs. Try it and
see whether you love it or hate it.
You can write simple computer programs
very easily by using the fairly simple HTML and Javascript languages.
You can just write a program in any text editor such as Notepad, and
load the file in your web browser. Once you have tried that, you can
move on to the bigger step of downloading an IDE (integrated
development environment) that includes a compiler.
After you try writing a few programs,
one of two things may happen. You will either love the work you are
doing, or you will hate it. It's pretty much that simple. If you love
the task of creating computer programs, there is a good chance that
you will get addicted to software development. That can be a very
lucrative addiction.
What is it like to have a job
developing software? It is a great job for introverts and shy people.
A typical programmer spends 90% of his time working by himself, and a
small fraction of his time attending meetings or talking on the
phone. Many people love that type of ratio.
Developing software is basically a
highly pleasurable activity. The best description I ever heard about
the joy of software programming was one I heard uttered spontaneously
many years ago by a programmer. He said, “Programming is a great
job because every day it's make your own gadget.” That sums it up
exactly. When you program, you are always making small changes in
your program that add a little bit more functionality. You get a very
pleasurable feeling of achievement when you try out your newly
developed functionality, and see it working correctly.
Young software developers often have to
work long hours, but they mostly don't mind. When you are in the
middle of a software development project, it can often be the case
that you would rather stay working for a few hours more than to go
home at 5:00 PM. This is because of the addictive nature of software
development. A stock analyst might be miserable working between 5:00
PM and 8:00 PM, but a software developer will typically be as happy
as someone playing a video game late into the night.
About the only negative I can think of
in regard to software development is that it is very much a young
man's game. There is tremendous age discrimination that will tend to
kick in when you reach the age of 50. But that's not much of a worry
for a 17-year old considering a career, as it still leaves you
decades of high-paying employment.
So my advice to a 17-year-old looking
for a career is: if you are a creative person, try your hand at
writing some computer programs. If you catch the programming
addiction, you can get rich from that addiction.
Nice and interesting post,I appreciate your hard work,keep uploading more, Thank you for sharing valuable information.
ReplyDeleteThanks for sharing valuable Information, I really very impressive on your blog. I hope you continue on blogging job.
ReplyDelete