All About Software Developers and Engineers

A woman in a lab works on a computer


Kayla Heisler
Kayla Heisler1.16k

What is a software developer?

Software developers research, design, develop, and test computer software. They tend to carry out more creative functions during the creation process. Applications software developers create computer applications for consumers, and this may vary from designing software for the general public to creating databases for specific organizations.

Software developer vs software engineer

While software developers may design a particular solution to solve a problem for a particular customer, software engineers are more apt to design solutions that can help the general public by using specific methods and algorithms. Engineers of any type typically earn the specialized title because they have had extra training and education that enables them to use scientific methods to solve problems in their chosen field. Engineers rely more heavily on methodical processes of established patterns that they apply to the design process.

Systems software developers create interfaces that allow computers to properly function and lead the development process for software programs. Software developers typically focus on a single aspect of the project at a time instead of the whole system, and they are more likely to work closely with graphic designers.

Where do software developers work?

According to the Bureau of Labor Statistics, the largest percentage of applications and systems software developers in the United States work in computer systems design and related services. 10 percent of applications software developers work for software publishers, finance, and insurance companies. Software developers typically collaborate with other team members who assist with designing, developing, and successfully programming software, though some software developers work from home. 

Some software developers specialize in a certain area of software development, such as data structures and algorithms. Developers who choose this area may work for an online retail company and create programming that is easy to navigate for shoppers. Another option includes using complex algorithms to learn rankings for search engines.

Ziprecruiter reports that software engineers are often employed by design firms for computer systems and electronic manufacturing companies. Software publishers, insurance carriers, and corporate institutions are other potential employers. Some software engineers choose a less traditional route and become independent contractors who work for various companies on short-term contracts. Another path that they may choose is to earn a graduate degree and pursue a career in academia by teaching aspiring software engineers. 

What skills and education are required?

Software developers and engineers typically hold a bachelor’s degree in computer science, engineering, or a related STEM field. However, because certificate-training programs have grown more comprehensive, many software developers now take the route of completing coding bootcamps instead of attending a traditional four-year college. 

Those in the field never stop learning: its imperative that software developers and engineers stay up-to-date on technology as it changes, meaning they must continue efforts to further their professional development for as long as they are active in the profession.

Software engineers should be well-versed in working with teams to support the entire development process for software. They should have a firm grasp of pattern design and multiple programming languages. Software developers should be extremely skilled in understanding either front-end or back-end programming language. They should possess a thorough knowledge of programs and workflows such as JavaScript, Python and Git. Additionally, engineers and developers should be able to simply communicate technical information to non-tech savvy people.

Possessing strong analytical skills is also a must for software developers and engineers. Some begin their careers by interning at software companies or working in entry-level IT positions for corporations in order to gain real-world experience while gleaning knowledge from seasoned professionals.  

Expected salary

According to the Bureau of Labor Statistics, software developers for applications made the highest earnings working for software publishers, earning a median annual wage of $112,230 in 2017 followed by manufacturing jobs, where they earned a median salary of $109,070. The overall median average was $101,790.

Software developers for systems software earned the highest salaries in manufacturing with an average of $115,420 followed by engineering services for $113,500. The lowest 10 percent earned less than $59,870, and the highest 10 percent earned over $164,150. Opportunities to advance and earn more can include becoming IT managers, positions that oversee the software development process.

According to U.S. News, software developers earned a median salary of $101,790 in 2017. Those who earned the top 25 percent took home $128,960 while the lowest-paid 25 percent made $77,710. The top three best paying cities were on the west coast: San Francisco, Seattle, and San Jose. The best paying states, where the mean salaries are all six figures, are Washington, California, D.C., New York, and Maryland. Aside from region, the biggest factors that impact salary for software-related industries are education, specialty, industry and employer.

Women in software engineering

The good news is that over half of all computer science graduates are women according to a 2018 study by HackerRank. The bad news is that while the gender gap for female programmers is closing, women are still more likely to hold junior positions than men are. Though there are more women studying and working in STEM fields, women are three-and-a-half times more likely to hold junior positions than their male counterparts despite being proficient in the programming languages that companies value most.

One bright spot is that there are more openings for mid-level managers than entry-level coders, so women who are looking to make the switch into the tech field can migrate to a new path without completely starting over. Various organizations have formed to help girls begin careers in tech earlier on and women flourish who are already working in in STEM careers. Women in Technology (WIT) is a non-profit organization that provides women who work in all levels the opportunity to network and develop professionally. WIT has a mission to help women ‘advance from the classroom to the boardroom.’

WIT offers the Girls in Technology (GIT) initiative that offers programs for mentorship, cyber defense, networking, and scholarships. Another effort to promote the computer sciences to girls so that the gender gap in technology will continue to close is Microsoft’s launching of DigiGirlz, a YouthSpark program that helps middle and high school girls learn about careers in technology and participate in computer and technology workshops. Programs such as DigiGirlz and GIT are trying to help ensure that though there is room for improvement, the future will hopefully be more equal.

Don’t miss out on articles like these. Sign up!  


Kayla Heisler is an essayist and Pushcart Prize-nominated poet. She is a contributing writer for Color My Bubble. Her work appears in New York's Best Emerging Poets 2017 anthology.