You are on page 1of 12

O

Software Development

Ryne Kolessar

Mr. Alburger
English 111
25 February 2016

KolessarI

Ryne Kolessar
English 111

Mr. Alburger
25 February 2016

Software Development
The extensive career of software development can result in a successful, fun, rewarding,
and well paying life. Jane Margolis defines Computer Science as "the study of computers and
algorithmic processes, including their principles, their hardware and software designs, their
applications, and their impact on society" (Margolis). A degree in computer science, fluency in
programming, knowledge and proficiency in new technologies, understanding of computational
theory and binary logic all help tremendously in the path to become a software developer.
Although usually not seen as important as the technical skills, communication and team building
skills havejust as much importance in the computer science industry Software developers, or
sometimes referred to as programmers, create websites, apps, games, operating systems and
more They zan affect the daily lives of people around the world by innovating and creating new

technologies.
Software development's influence spreads everywhere, in almost every aspect of the
modem world. As of 2013, 83.8% of citizens owned a personal computer in the United States
(US Census Bureau). As long as our modern society continues to revolve around technology and
computers, a need always exists for software developers. Software development makes use of
computer science, a discipline that involves creating technology and software and telling the

computer what to do with it. Computer science existed since the invention of the personal

Kolessar 2

computer in 1975 (When).No single development in technology and computers had as large of
an impact as the formation of the binary system. This creation eventually led to the invention of
electric circuitry. Shao Yung, a Chinese philosopher and scholar founded the binary number

system in the 1Ith century (Lande). The binary number system differs from the most common
number system used today, the Hindu-Arabic numeral system, or base 10. Other number systems

include the duodecimal system or base 12 and the hexadecimal system or base 16 (Lande). The
binary number system, or base 2, only uses two symbols: 0 and 1. Nearly all computers and

programminglanguages use the binary system in order to function, for this reason, it becomes a
necessity to understandhow it works. The hexadecimal system, base 16, adds the letters A-F to
the standard system symbols. Often, hexadecimal numbers represent colors in programming,
video/photo editing, and other software due to its easy conversion to the binary number system,

while having a shorter wtten representation(Lande).For example, FFOOOO,


can represent the
color red in hexadecimal, each pair of digits representingthe amount of each primary color: red,
blue, and green.

The invention of the personal computer revolutionized the world. In December 1974,a
small hobbyist electronics firm, called Micro Instrumentation and

Systems, or MITS,

from Albuquerque, New Mexico, created the world's first minicomputer kit, the Altair. Upon
receiving this news, William "Bill" Gates and Paul Allen, two Harvard undergraduates,dropped
out to develop software for the Altair computer (Ceruzzi). They founded their software company
and called it "Microsoft."
In 1995 Larry Page, a recent Michigan University graduate, traveled to Stanford

University in California to take a tour as he contemplated whether or not to attend. Sergey Brin,

Kolessar 3

his assigned tour guide, and Larry started to collaborate ideas about a project A year later, they
began working together on a search engine called Backrub. That project eventually became

Google. In 1998,Larry Page and Sergey Brin founded Google Inc. and they moved into a garage
in Menlo Park, California. The next year, they moved their headquartersto the current location in
Mountain View, California (Our History in Depth). Today, as two of the most influential

software companies in the world, Google employs over 55,000 individuals (Bort) and Microsoft
just over 100,000employees worldwide (Facts aout). Software developers and engineers make
up a large majority of these employees. Computer science drives innovation in science and
technology fields around the world.
Computer science, programming,and software development makes possible the creation
of operating systems, applications for computers and mobile devices. Recently, the development

of mobile applications has become a huge business. An app differs from an operating system
such as, Windows, Android, iOS, or OS X. A piece of software built to perform one specific
lnction, such as sending emails, or playing games defines an app. The movement known as the
"app revolution" involves selling cheap, downloadableapps to smartphones,tablets, and also
PCs. Typically app pricing ranges from Oto 99 cents, sometimes up to $5.00 (How to).
Currently over I million apps have a spot in the Google Play Store, the largest mobile
application store (Wang). Even more exist in third-party stores and the Apple App Store. Out of
those million apps on the Google Play Store, very few become successful. Most apps lose 76%
of their users within the first three months of use. In order to build a useful app that has loyal
users and can gain revenue, programmersmust exercise proficiency in coding usually in the

java language, the primary language used for developing android apps, or swift, for an aople

Kolessar 4

device. Next, the programmer should create an easily understandable,yet still functional design
To ensure the app has minimal flaws, plenty of time must go into debugging. Finally, the
developer or publisher will choose the monetization method. Many options exist in this step: the

app could have an upfront, set cost, advertisements could display in the app, it could use the
"freemium" model, where the app does not have an upfront price, but to unlock certain features
or remove ads the user must pay a premium. Of course, an app could have a great design, work
well, and have few bugs, but still have minimal success. This happens because of the difficulty
of coming up with a successftll idea, one that people want, or that will make their lives easier
(Wang). A successful app usually does not happen on the first try. For example, software
developer Rovio attempted 52 times to build a successful app. On its 53rd attempt it created
Angry Birds, a mobile game played by over 200 million people worldwide (How to). Although

easily accessible, app development can not guarantee monetary gains or success.
Students who have an education in computer science have an immense advantage over
those who decide to apply for jobs without a degree. The computer science major in college
requires a large amount of work, time, practice, and persistence. However, the degree assists
greatly in acquiring a job and starting a career as a software developer (Stephens). Plenty of
universities offer computer science degrees around the country and world. Attending a college
with a great reputation for computer science can greatly assist with getting an internship, or
possibly even a first job after graduating. Reputable colleges near or in North Carolina such as
North Carolina State University, the Georgia Institute of Technology, Appalachian State
University, and The University of North Carolina all offer Bachelor of Science degrees in
various computer fields. After college, one can either move to graduate school or start their

Kolessar 5

career (25 accredited). A computer science major will typically have the core classes for the first
few semesters,then the studentwill specialize and start taking more classes in computer science,
calculus and various other math courses. Attending college will provide the most common and
typical way to gain knowledge on programming, software development, and the other aspects of

computer science. However, other methods can teach students the necessities, or improve on
current knowledge as well as, or in some cases, better than, a Bachelor's degree in Computer
Science. Coding 'boot camps' have become a very popular option. They have courses designed

to give students real hands on experience so that they can move on to the workplace easily. One
coding boot camp in particular, Codecore, known for their ability to stay on top of trends and
hunting for developers with many skills, offer small class sizes and mentorship from people with
actual experience in the tech industry. These short and intensive bootcamp courses challenge
O

students and force them to apply the knowledge realistically. The CEO of Codecore, Jeremy
Shaki said "Boot camps offer an accelerated launchpad into a career." These schools do not

require a background in computer science or any major experience but they do require the desire
to become a developer and mastery in some some basic skills. Cheaper and faster than a
university or college program, coding bootcamps typically last six to twelve weeks. Within three
months of graduating, 90% of boot camp students have a job (Assaly). Online classes have
become another popular way to learn about computer science. These allow students to take

classes from the comfort of home on their personal computers. Popularized mainly because of
their low price and accessibility, online computer science classes offer an extremely inexpensive,
sometimes even free education, compared to the prices of a university or college program. Many

students use online courses to determine whether or not they truly want to pursue a career as a

Kolessar 6

software developer, as many high schools in the United States do not offer computer science
classes. The few high schools that offer computer science classes have very low rigor and
engagement levels in the course. Because of the requirements of taking a class in computer
science may limit enrollment to a certain group of students, those who have access to a

computer, internet, and usually prior knowledge. Others who may not have the same schooling
opportunities, or family resources cannot learn the extremely valuable skill of computer science
(Margolis). In order to allow for more students to have the opportunity of taking valuable
computer science classes, many advocacy groups, such as Code.org support adding computer
science to the the core curriculum, alongside traditional math and science classes. Unfortunately,
a common misconception has formed between the differences the difference of computer science
and technology training. Computer science encompasses the study of how computers work, and

tech training involves the use of a program to fix an issue. Many people do not understand the
difference between knowing how to use technology and knowing how to create it. Code.org

predicts that by 2020, one million more computer science jobs will exist than people to fill them
(Shueh). Other Methods, such as through game design, can efficiently teach younger students to
program. Many organizations find it easier to teach computer science to younger students

through game design than other methods because they have an interest in the topic. Video game
courses can give students the motivation to learn the oftentimes difficult material (Today's).
After graduation, internships can greatly assist in gaining experience as a software developer,

many universities will help provide internships to current students and graduates. Internships
with large tech companies can often lead to a job with that particular company. They also show

students how a software developer lives on a daily basis.

Kolessar 7

With a Bachelor's degree in computer science one can obtain employment in many
different jobs. After graduating, the typical employee will start out as a junior developer,
software engineer I, or simply a developer. Typically, in traditional tech companies, these entry
level jobs involve handling the less desirable tasks, or bug fixing. In smaller or less traditional
tech companies entry level developers can also work alongside more experienced developers. As
a developer gains more experience, knowledge, and skills, they can move on to other jobs. After
generally 2-5 years of working as a developer, a veteran could become a project manager, lead
developer, or stay as a software developer. Newer developers or frontline members of a team
spend the majority of their time coding. As a developer moves up in position, research, planning,
making design and architectural choices take up more time than coding. For most computer
science jobs, developers will work as a team on a project, they will start by having meetings and

planning the project. They will then move on to planning the design and meeting with engineers.

Next, the development of the project starts. After

the code, bug fixing, polishing, and

testing take up the majority of the time. Oftentimes, software developers will have high
flexibility for dress, hours, place of residence, and vacation times, but this varies from workplace
to workplace (Stephens). The salary for a software developer also varies. Many factors go into
deciding the salary, such as, years of experience, location, company size, and the specific jobs
titles. A graduate with a Computer Science degree can have a salary anywhere from $50,000 to
$75,000. After 2-3 more years of experience, the range can raise to $100,000 to $115,000. The
location plays a large role in determining one's salary, a company located in a "tech hub" will
pay better than one somewhere else because tech hubs typically have many large tech companies

that compete for the services of potential employees. Most innovation comes out of these "tech

Kolessar 8

hubs." Some of the largest tech hubs include Silicon Valley (San Francisco, San Jose, and the

surrounding area), Seattle, Austin, and Raleigh. Starting out in one of these areas, salary can

range from $65,000 to $100,000. With some more experience the range can go up to $120,000 to
$150,000.Above average developers, with the willingness to continue learning, have an
unlimited salary ceiling, as they will always have room for more growth and bonuses. Major
Tech companies, willing to do whatever necessary to have the good developers on their teams,
will raise their salaries and give bonuses to the top developers accordingly (Stephens). A degree
in computer science can open the door to many different careers. High salaries combined with
the growing demand for developers in the United States and around the world, makes computer
science a great choice for a college major.
With the rewarding degree of computer science, jobs such as a software developer, web

developer, or other tech related careers, have become obtainable. As a software developer
working in a team environment, one will get to work with many different people from around the
world on projects that can literally shape the future. One can work on projects that people may
eventually use on a daily basis to better their lives. This career has boundless potential for
unleashing ones creativity and imagination. One can create new innovative technologies, design
websites and apps, create video games, build robots, develop medical equipment, and much
more. Also, software developers may earn a very substantial salary that can steadily increase
throughout one's career. Within this ever-expanding, technology driven world, the broad, in
demand, highly respected, well-paid, and exciting field of computer science will always have
demand.

Kolessar 9

Works Cited
ASSALY, RICHIE. "Up To Code." Maclean's 128.40

MAS'Complete. web. 4 Jan.

2016.

<http://search.ebscohost.com/login.aspx?direct=true&AuthType=ip,custuid&custid=s845
5861

Bort, Julie. "Google's Hiring May Have Slowed, but It's Still Adding Thousands of New
Employees." Business Insider. Business Insider, Inc, 17 July 2015. Web. 03 Feb. 2016.
<http://www.businessinsider.com/google-has-57000-employees-2015-7>.
Cemzzi, Paul E. 'Ready Or Not, Computers Are Coming To The People": Inventing The PC."
0.41-1Magazine Of History 24.3 (n.d.): 25. Science Reference Center. Web. 2 Feb. 2016.
"Facts About Microsoft." News Center. Microsoft, 23 Oct. 2014. Web. 03 Feb. 2016.

<http://news.microsoft.com/facts-about-microsoft/>.
"HOW TO BE AN APP M P MLLIONAIRE." Mail on Sunday 05 June 2011 : 20. Newspaper

Source Plus. Web. 4 Jan. 2016.


<http://search.ebscohost.com/login.aspx?direct=true&AuthType=ip,custuid&custid=s845
5861&db=n5h&AN=61003172&site=src-live>
Lande, Daniel R. "Development Of The Binary Number System And The Foundations Of
Computer Science." Mathematics Enthusiast 11.3 (n.d.): 513. Science Reference Center.

Web. 4 Jan. 2016.


<http://search.ebscohost.com/login.aspx?direct=true&AuthType=ip,custuid&custid=s845
5861

Kolessar 10

Margolis, Jane, Joanna Goode, and David Bernier. "The Need For Computer Science."
Educational Leadership 68.5 (2011): 68. MAS Complete. Web, 4 Jan, 2016.
<http://search.ebscohost.com/login.aspx?direct=true&AuthType=ip,custuid&custid=s845

'tour History in Depth Company Google. " Our


History in Depth Company Google.

Google, n.d. Web. 02 Feb. 2016. <https://www.google.com/about/company/history/>,

SHUEH, JASON. "Advocacy Groups Push Coding As A Core Curriculum." Fiucation Digest
80.3 (n.d.): 42. Science Reference Center. Web. 4 Jan. 2016.
<http://search.ebscohost.com/login.aspx?direct=true&AuthType=ip,custuid&custid=s845

Stephens, Blake. Online interview. 26 Jan. 2016.

"Today's Gamers Are Tomorrow's Coders." Techniques: Connecting Education & Careers 90.7
(n.d.): 60. Science Reference Center. Web. 4 Jan. 2016.

<http://search.ebscohost.com/login.aspx?direct=true&AuthType=ip,custuid&custid=s845
5861&db=sch&AN=110363240&site=src-live>
Wang, Jennifer. "Lessons In App Building." Entrepreneur 40.8 (n.d.): 80. Science Reference
Center. web. 4 Jan. 2016.
"When Was the First Computer Invented?" When Was the First Computer Invented? N.p., n.d.
Web. 05 Feb. 2016. <http://www.computerhope.com/issues/ch000984.htm>.
<http://search.ebscohost.com/login.aspx?direct=true&AuthType=ip,custuid&custid=s8455861 &
db=sch&AN=77890368&site=src-live>

Kolessar

II

5 Accredited Computer Science Schools in North Carolina." 25 Accredited


Computer Science

Schools in North Carolina. N.p., n.d. Web. 04 Feb. 2016.


<http://www.educationnews.org/career-index/computer-science-schools-in-north-carolina