This post originally appeared on Fullstack Academy's blog.
In today's world of information technology, any business without the necessary software applications to connect with their customers and partners will soon be irrelevant, which is why software engineering and other tech-related jobs are promising career paths for the foreseeable future. There are many job titles that fall into the category of information technology including software engineer, UX/UI designer, data scientist, and more. If you are considering a career as a software development engineer, we’re here to help. This article will go over:
- Skills and qualifications
- Training and education
- Career paths and salary estimates
- Why location matters
Skills and Qualifications
It goes without saying that developing computer software is a technical profession. If you are pursuing a computer science job you will need to have an aptitude for math and statistics, problem-solving, and the ability to clearly communicate complex technical problems to both technical and non-technical colleagues. If you can master these core skills, you are ready to explore a more specific career path in the field.
Depending on your specific employer and job title, you will need to develop your own niche expertise to execute your position effectively. Let’s go over three of the most common jobs for people in the computer science field.
Software developers create applications designed to work across devices and enable an end user to complete a specific set of tasks. The job title “software developer” can refer to both front-end developers and back-end developers. Back-end developers focus on coding an application’s logic to deliver information from the server to the end user. These developers are usually skilled in programming languages such as Java, Python, Ruby, and PHP.
Computer Systems Analyst
You can think of a computer systems analyst as an IT operations manager. Their primary role is to optimize an organization’s computer systems and procedures, and maximize ROI on all software-related tasks.
A systems analyst job is typically not an entry-level position. The role requires a depth of knowledge of hardware, software, and the needs of a business’s key stakeholders. A computer systems analyst must have strong communication skills—they work across teams and must balance the needs of the dev team with the priorities articulated by the decision makers.
Today, most forward-thinking companies adopt a “data-driven” approach. With affordable cloud-based storage, greater processing power, and better data analysis tools, data scientists are in higher demand than ever.
Data scientists analyze user information, looking for patterns and insights that will improve both the user experience and the company's overall value proposition. Data scientists query the database and develop systems that allow the business to easily track key metrics and launch new experiments accordingly.
Training and EducationTech companies like Amazon and Microsoft recruit students with a master’s degree in computer science, computer information systems, or other similar tech degrees. However, even a two-year degree at a state university will typically cost $60,000 or more. In addition, the rate of change and innovation in the computer science profession means that by the time you graduate and are ready to enter the field, the knowledge you’ve acquired may no longer be relevant. As such, the investment of time and money in a degree program can be off-putting for those looking to break into the IT field.
Many aspiring software engineers and IT professionals are opting for a combination of self-learning and coding bootcamps. Coding bootcamps are appealing for young professionals and career changers. They offer a curriculum flexible enough to stay on the cutting edge of technology and teach not only technical skills, but portfolio building and job search training.
Given this new educational model and how effective coding bootcamps have proven since their inception around 2012, the big tech companies have broadened their nets to include not only candidates with technical master’s degrees, but also bootcamp grads.
To learn more about coding bootcamps, read this post: Are Coding Bootcamps Worth It?
Career Paths and Salary Estimates
In an ideal world, your salary grows with your experience. According to Payscale, the average salary for a junior software engineer in the U.S. is $67,607. It generally takes five to 10 years of experience in the IT industry for junior developers to be promoted to senior software engineer positions. Senior developers have an average base salary of $99,935, with benefits and bonuses that can bring total compensation closer to $130,000 annually.
It’s worth noting, however, that salary growth is not distributed equally among tech’s employees, with women and people of color growing both less overall and at a slower rate than white men. In an effort to address this inequity, Fullstack Academy works with all students, men and women alike, to instill effective salary negotiation practices, the lack of which is one factor in the pay disparity between white men and everyone else in tech.
Moving up the ladder to senior developer isn’t the only career path for software engineering career hopefuls. Several of the top career advancement options include software architect, principal software engineer, or information technology consultant.
A software architect typically works for a large software development agency and oversees software projects custom-designed for clients. They are trusted to design and enforce coding standards, control the budget of a project, and deliver bug-free software. The salary range for a software architect is $85,021–$158,512. Notable employers of software architects include Intel and IBM.
Similar to a computer systems analyst, a principal software engineer typically manages the IT department and its projects, staff, and equipment. A principal software engineer should be well-versed in programming languages, problem-solving, and cross-functional communication. Payscale lists the salary range for principal software engineers as $101,086–$167,554. Thanks to talent demand and robust salary packages, Oracle and EMC Corporation are desirable employers for engineers looking to move into this role, especially in the New York area.
Information technology consultants either run their own businesses or work at agencies that accept clients. They are hired to advise organizations on their IT systems, including hardware needs, software projects, system updates, data breaches, and more. Their job can also include pitching the best software systems to senior managers and training staff to use new systems. Information technology consultants have a wide salary range of $47,217–$117,601. Booz, Allen and Hamilton, Accenture, and Deloitte are among the top contractors of IT consultants.
When it comes to compensation, location matters. To determine take-home pay, it’s important to consider not only salary but also cost of living, taxes, and rent or housing costs in your locality. According to data from Sokanu, the five states paying the highest annual salary to software engineers are:
Seattle is becoming one of the biggest tech hubs in the country--Amazon and Microsoft have headquarters here. Industry leaders like this drive up the salaries around the state and make for a more competitive job market.
The Golden State encompasses the San Francisco Bay Area and Silicon Valley, which is considered the cradle of innovation and the greatest tech hub in the world. The region consists of both startups and industry giants like Google, who compete for the best talent and offer the best salaries.
The fishing industry, petroleum industry, robust tourism, and a sizeable military presence means Alaska needs plenty of software and the developers to create it. As a sparsely populated state without a strong IT talent pipeline from universities, companies offer competitive salaries to draw qualified software engineers.
4. New York
New York City is the largest finance and business center in world. With a growing startup scene and tri-state transit, commerce, and logistics industries, there are plenty of well-compensated software engineering opportunities in the New York area.
5. District of Columbia
Washington D.C. is the epicenter of government-related tech, military contractors, and national and international nonprofit organizations. D.C. also has a growing cyber security ecosystem. These forces combine to make the software engineer job market quite competitive.
Most people think of the Silicon Valley and the San Francisco Bay Area as the top destination for IT professionals. According to Glassdoor, the average annual salary of software developers in San Francisco is $124,000, putting the city near the top of the list.
However, exorbitant rent prices means that a large chunk of your check is paying for your housing, not staying in your bank. The same is true of Washington, D.C., New York City, and other metropolitan business hubs. Before you choose a location, make sure to consider all of your expenditures.
Work and Then Pay
The prerequisite to landing the job you want in your desired city is a a grasp of computer science basics and expertise in one or more programming languages. You need to continually challenge yourself to be up to date on industry trends, build up your software developer portfolio, and network with people in your field.
Here are some additional resources that you may find useful in your quest to become a mover and shaker in the IT field:
Still not sure how to land the role you want? Check out hiring outcomes from Fullstack Academy graduates and see if coding bootcamp can help you get there.