Explore jobs
Find specific jobs
Explore careers
Explore professions
Best companies
Explore companies
Software programmer/analyst job growth summary. After extensive research, interviews, and analysis, Zippia's data science team found that:
The projected software programmer/analyst job growth rate is 21% from 2018-2028.
About 284,100 new jobs for software programmer/analysts are projected over the next decade.
Software programmer/analyst salaries have increased 10% for software programmer/analysts in the last 5 years.
There are over 222,601 software programmer/analysts currently employed in the United States.
There are 255,348 active software programmer/analyst job openings in the US.
The average software programmer/analyst salary is $72,278.
| Year | # of jobs | % of population |
|---|---|---|
| 2021 | 222,601 | 0.07% |
| 2020 | 360,880 | 0.11% |
| 2019 | 271,243 | 0.08% |
| 2018 | 570,235 | 0.17% |
| 2017 | 556,835 | 0.17% |
| Year | Avg. salary | Hourly rate | % Change |
|---|---|---|---|
| 2025 | $72,278 | $34.75 | +3.4% |
| 2024 | $69,897 | $33.60 | +2.3% |
| 2023 | $68,314 | $32.84 | +1.8% |
| 2022 | $67,108 | $32.26 | +1.7% |
| 2021 | $65,980 | $31.72 | +1.9% |
| Rank | State | Population | # of jobs | Employment/ 1000ppl |
|---|---|---|---|---|
| 1 | District of Columbia | 693,972 | 762 | 110% |
| 2 | Rhode Island | 1,059,639 | 502 | 47% |
| 3 | Delaware | 961,939 | 449 | 47% |
| 4 | Vermont | 623,657 | 292 | 47% |
| 5 | Virginia | 8,470,020 | 3,799 | 45% |
| 6 | Massachusetts | 6,859,819 | 2,958 | 43% |
| 7 | Oregon | 4,142,776 | 1,741 | 42% |
| 8 | Utah | 3,101,833 | 1,208 | 39% |
| 9 | Maryland | 6,052,177 | 2,270 | 38% |
| 10 | Washington | 7,405,743 | 2,762 | 37% |
| 11 | Nebraska | 1,920,076 | 616 | 32% |
| 12 | New Hampshire | 1,342,795 | 436 | 32% |
| 13 | Montana | 1,050,493 | 331 | 32% |
| 14 | South Dakota | 869,666 | 271 | 31% |
| 15 | California | 39,536,653 | 11,795 | 30% |
| 16 | Colorado | 5,607,154 | 1,702 | 30% |
| 17 | Minnesota | 5,576,606 | 1,636 | 29% |
| 18 | Wyoming | 579,315 | 167 | 29% |
| 19 | New Jersey | 9,005,644 | 2,449 | 27% |
| 20 | Kansas | 2,913,123 | 778 | 27% |
| Rank | City | # of jobs | Employment/ 1000ppl | Avg. salary |
|---|---|---|---|---|
| 1 | Manhattan Beach | 1 | 3% | $85,947 |
| 2 | Oakland | 1 | 0% | $91,769 |
| 3 | San Diego | 1 | 0% | $81,896 |
Brandeis University
California State University - Sacramento
California State University - Bakersfield
Nova Southeastern University
Carnegie Mellon University
Seminole State College of Florida
Eastern Washington University
The University of the South
Northwestern University
Southwestern University
University of Wisconsin - Eau Claire
Texas A&M University
Nova Southeastern University
Sepehr Mohammadian: 2. Computer science remains in high demand in today's job market, with California exemplifying this trend. In recent years, the number of open positions in the state has exceeded the average demand rate by 1.5 times. At the University of the Pacific, our CS program is designed to equip students with the necessary skills and experiences to thrive in this landscape. Through our co-op program, in collaboration with recruiters such as Nvidia, HP, and Lawrence Livermore National Lab, students have the opportunity to participate in paid internships lasting approximately 8 months. These internships provide invaluable exposure to real-world work settings and allow students to apply their knowledge in practical contexts and gain valuable industry insights. It is worth noting that many of our graduates choose to return to the same company post-graduation.
Sepehr Mohammadian: 1. This is a pretty broad question. CS degree graduates can engage in different tasks and responsibilities based on the nature of their profession. Examples include 1) software engineering, in which the individual's efforts are toward leading or contributing to software development projects, 2) IT management, where the individual mainly oversees technology strategies and their implementation, 3) cybersecurity, where the individual's responsibilities are associated with the protection of systems and data from cyber threats, and 4) data and AI engineering, where the individual works on machine learning applications and analyze and derive insights from large datasets.
Sepehr Mohammadian: 3. The appeal of computer science among students is often attributed to the relatively short journey from concept to execution. Unlike many engineering fields where hardware constraints can impede the swift realization of ideas, the development of software offers a streamlined process. With nothing more than access to a computer and relative proficiency in programming, individuals can swiftly transform their ideas into tangible solutions. This accessibility and agility contribute to the popularity of CS among aspiring students. On the other hand, CS heavily relies on abstract analysis as a fundamental skill for success. Students who struggle with grasping abstract concepts may find themselves frustrated or disengaged with the field.
Adam Roth: I recommend that students start by identifying a specific skill in demand within your field, such as data analysis or social media marketing, and focus on developing expertise in that area. Research salary ranges and living costs in particular areas where you’re interested in working to ensure your compensation aligns with the local market. Always negotiate a salary and consider other aspects of the offer, such as funds for continuing education, technology and more. Continuing to network and establish demand for your services is essential; attend industry events, join professional associations, and engage with professionals in your field. Never miss an opportunity to reach out to and check in with your professional contacts. Pursue additional learning opportunities and education, such as certifications or advanced degrees, to provide a competitive advantage and increase your earning potential over time.
Bradley Andrew Ph.D.: I’m going to change the question based on the evidence gathered by labor economists. Overall, income rises most in a person’s 20s and 30s, stagnates in one’s 40s and actually falls from age 50 on. Moreover, people who are willing to change jobs more frequently have greater salary growth. If this is your goal, then spending your twenties and thirties working hard on your skills and credentials, being willing to move from one position to another and being geographically flexible will increase your lifetime income.
Bradley Andrew Ph.D.: Once you have your first job, ask about or determine the 20% of your supervisor’s job that they hate and start doing that for them. They will love you for it and it will quickly get you recognition. You’ll also be well on your way to learning your boss’s job. Continue doing this as you progress in your career (Kudos to Theo Epstein, former GM for the Red Sox, for this recommendation)
No matter the task you’re given, do it to the absolute best of your abilities. In the professional world, you may often be given menial tasks or tasks that you don’t believe are part of your job description. Doing those tasks to the absolute best of your ability leads to increased trust, recognition and responsibility and will put you “above class.” If asked, the coffee you bring should be the best your boss has ever had. You never know who’s watching.
Don’t expect credit and don’t ask for credit when things go right; give the credit to others.
Dr. Sridhar Ramachandran: As a Computer Science graduate, it’s vital to work on independent projects outside of course projects or assigned tasks. This allows you to apply your knowledge and explore new areas and opportunities. Showcasing these projects in a digital portfolio provides a visual and tangible representation of your skills and growth. Emphasizing your attention to clean coding and documentation reflects your professionalism and attention to detail. The field is vast and rapidly evolving, so stay curious, keep learning, and enjoy your professional journey. Avoid getting caught up in fleeting trends. Understanding the difference between work, job, and career is crucial; find work and jobs that contribute to your long-term career aspirations while steadily maintaining your focus on your career goals. In addition, being aware of the organization’s environment and culture at the workplace you intend to work at is important. Familiarize yourself with workplace methodologies like Agile, Just-In-Time (JIT), DevOps, Scrum, Kanban, Lean, Feature-Driven Development (FDD), Extreme Programming (XP), Rapid Application Development (RAD), and Software Development Life Cycle (SDLC) (to name a few). Each organization will have its unique blend of these elements, and knowing what works best for you will help you thrive in your chosen career path. Remember, the key to success in this dynamic field is continuous learning and adaptation.
Dr. Sridhar Ramachandran: To optimize your earning potential in the field of Computer Science, it’s important to establish a solid educational foundation and master widely-used programming languages and technologies. Internships offer invaluable hands-on experience, and obtaining industrial certifications in specialized areas can significantly increase your marketability. Cultivating a robust professional network and honing your salary negotiation skills are also key. It’s important to stay updated with the latest technological advancements, salary trends, and consider focusing on a niche area in high demand. From the outset of your career conversations, it’s beneficial to communicate clear salary expectations. Conduct thorough research on the current market rates for the role you’re targeting to ensure your expectations are realistic. Understanding your worth in the market is crucial, and you should aim for a salary that not only reflects your skills and experience but also keeps you motivated and invested in your work. Remember, while salary is a significant factor, aspects like work-life balance and job satisfaction also play a vital role in your overall career satisfaction. Aim for a win-win salary negotiation where both you and your employer feel the compensation is fair and equitable.
Dr. Sridhar Ramachandran: The field of Computer Science is a dynamic and rapidly evolving landscape. Over the next 3-5 years, several skills will gain prominence. Artificial Intelligence and Machine Learning will be indispensable due to the surge in data generation. Cybersecurity will become critical as our reliance on digital systems intensifies, and it will be everyone’s prerogative to ensure the security of their digital assets. Essential cybersecurity skills will include understanding of network security, proficiency in security software tools, knowledge of threat and vulnerability assessment, and the ability to implement incident response and recovery plans. Proficiency in Cloud Computing platforms such as AWS, Google Cloud, and Microsoft Azure will be sought after as businesses increasingly transition to the cloud. Data Science and Analytics will continue to be pivotal for data-driven decision making. Quantum Computing, though nascent, holds the potential to revolutionize the field. Soft skills like communication, teamwork, and problem-solving will be vital in managing complex, interdisciplinary projects. In this dynamic field, employees who know how to learn, unlearn, and relearn will have a competitive advantage. This is particularly true with the emerging importance for AI programming languages like Julia, Swift for TensorFlow, and Rust.
Sarah Lupis: -Picking up new technology quickly. Companies have their own programs and softwares, so being able to learn quickly will allow you to hit the ground running. More broadly, a flexibility to learn new work cultures, cultivate social relationships, and pick up on new skill sets. In my opinion, this is something that Gen Z excels at
Kin Chung Kwan: Computer science is rapidly growing, with new technologies emerging daily. The desired skill set can vary from year to year. We should always stay updated on the latest global developments and prepare to learn something new. Keeping your skills up-to-date and aligning them with the current needs of employers and target customers is crucial to maximizing salary potential.
Kin Chung Kwan: We are in an Artificial Intelligence (AI) revolution. AI development will continue to be a global priority and dominate the tech landscape in the next few years. For computer scientists seeking career progression, gaining a comprehensive understanding of AI is crucial. Furthermore, understanding limitations, ethical considerations, safety and security measures associated with AI is an important responsibility that every computer scientist should be aware of.
Kin Chung Kwan: Programming is the cornerstone of computer science. Solving problems effectively through proficient programming is a vital key to career success. Learning programming is like athletic training. One cannot become a skilled athlete solely through attending lectures. Programming skills can only be improved with consistent practice. Learning new techniques and repeated practice can help professionals refine their programming abilities and achieve career success.
Prof. Kim Jovanovich P.E.: Attached please see the responses to your interview questions. I hope this sheds some light on the questions you asked!
California State University - Bakersfield
Business Administration, Management And Operations
Dr. John Tarjan: In two ways which are related: 1) Always be conscious of creating value for the organization. Don’t expect a raise until you create value for the company well in excess of any potential increase in salary you may think you deserve; and 2) exceed expectations. Raises and promotions go to those who stand out and make their bosses’ jobs easier. Common complaints among employers is that new employees expect to be promoted and compensated before demonstrating value to the organization and that they feel a sense of entitlement bordering on arrogance.
Nova Southeastern University
Computer Software And Media Applications
Junping Sun Ph.D.: Being capable to perform, being competitive to excel, being able to communicate as a team player, being a connoisseur to act, being a clairvoyance to perceive, being creative to innovate, being conscientious with professional integrity.
Junping Sun Ph.D.: Computer Science and its applications in various fields are very dynamic and constantly evolving, and anyone in the fields needs to prepare to be adaptive by lifelong learning.
Junping Sun Ph.D.: Computer science is an algorithm science for problem solving in real world applications. The skills of problem solving require critical thinking with solid foundation of the professional knowledge in the relevant domains. It is crucial to have strong critical thinking skill with sophisticated logical and philosophical perspectives.
Joseph Taylor: The role of a Business Analyst can vary greatly from company to company, and even from department to department, so it is very important to look at the details of a particular position that you are applying for. One common factor from all Business Analyst is that they are generally expected to make sense of data, and to be effective communicators that can apply insights to real-world problems.
Jonathan Aldrich: Hone your skills so you are great at what you do, and gradually build to be great at what you want to do next. When you are confident in your current position, look for the next step--which may be a promotion in your current organization or a new job outside it.
Jonathan Aldrich: AI is a powerful new tool but it is also unreliable. Learn how you can use it but also what its limitations are, so that you can protect yourself and your customers from those limitations. Always have a way to double-check that the results of AI are sensible and appropriate. No one is a lone coder anymore--you'll be more effective if you can work with other people and with tools that multiply your capabilities. Work on your teamwork skills and keep your eye out for new tools and technologies that make you more effective.
Jonathan Aldrich: Be open to new experiences and focus on learning from them. A degree in computing gives you a foundation but there will be new challenges in every job; always be thinking about what you can do to become more effective at your tasks.
Holger Findling: Most companies have a fixed range in salary for new hires. There is very limited space to negotiate a higher pay. It used to be a standard practice not to stay more than three years with a company because salary increases are associated with labor grade ranges. A larger salary increase can be realized by moving to a different company. Typically, 5% increase vs 3% salary increase. However, a programmer needs to continue studying in the field of interest. Earn a master's degree. Be the best you can be!
Holger Findling: Decide what technical area you would like to work in your field of expertise. Do you like to work for the aerospace industry? Decide what specific component you are interested in. Aircraft, Missiles, Energy, Navy - ships, Finance? The issue is that these components are developed in different states. For instance, in Florida Mid-Range missiles are developed and flight simulators. However, aircrafts are developed in Texas, Georgia, and Arizona, not in Florida. There are a lot of programmers needed for financial software. Most likely these jobs would be in New York, New Jersey, Atlanta, California and Massachusetts. In other words understand what industry you would like to work for, and understand that the industries are clustered in different states.
Holger Findling: Technologies are changing very fast, and you must change with it. Don't be rigid. AI is going to increase in the next five years, and the demand for programmers will be high. You would have to take courses studying AI concepts. Bio-Medical fields and Biometrics will be expanding in capabilities and these fields will need a lot of programmers. Take some additional courses, for example Biology and Chemistry.
Eastern Washington University
Computer Software And Media Applications
Dan Tappan: As much as possible, become a subject matter expert in the domain you're working in. The biggest problems we have are in not understanding the customer's problem and not understanding the customer's problem domain. Neither side is conversant in the other's world. We can't expect the customer to learn software development, so we have to learn about their world to bridge this gap.
Dan Tappan: This field changes so rapidly, it's hard to predict. Artificial intelligence has really taken off recently. There's no clear distinction between AI, machine learning, big data, and related areas anymore. They all blend together. These aren't just used as solutions to problems; they're also playing an ever-larger role in the tools we use to solve those problems. ChatGPT, for example, helps in writing documentation, and Google products help in writing code. Solid skills in these areas can streamline the development process.
Dan Tappan: There's not much room for salary negotiation as a new graduate with no experience. Every CS graduate shares roughly the same required background. What often distinguishes one applicant from another, or boosts the salary, is non-required experience with personal projects, contributions to open-source development, and so on. This shows not only applications of the required background, but also the initiative to learn and do more than is expected for the degree.
Northwestern University
Information Science/Studies
David Ostrowski: Create value in your position, become an expert in a few key areas to maximize value, concentrate on deep skill sets within a specific application domain, innovate and push the limits of technology.
David Ostrowski: Keep Learning. Some in the past have held the understanding that learning stops after college. While college gives you the foundation and insight, one needs to continually be learning throughout their career. Maintain an entrepreneurial mindset - even and especially if you plan on working for a large corporation (intrapreneur). Take a portion of your workweek to pursue new ideas and innovate. Maintain a portfolio of your work internally or externally. Love your work.
David Ostrowski: Deep technical software skills, incorporating and innovating with AI, programming languages like Golang, Solidity, Rust, JavaScript, understanding and appreciation of the functional programming paradigm. Innovation and pushing the limits of technology.
Dale Dzielski MBA, CMA®, PMP®, SAFe® 4 Agilist: Be prepared for a lifelong learning experience; it just begins now. Be confident in what you know but open to learn more because you will.
Dale Dzielski MBA, CMA®, PMP®, SAFe® 4 Agilist: Enjoying your job is the most important thing for success and longevity.
Smaller businesses usually will pay more but offer the potential to move up as the company grows. Big payoffs can come if the small company that you help to grow sells off to a larger company a few years down the road. You don't have to wait years as this can happen in today's fast pass IT industry in 2-5 years.
Earn a Master's degree such as the WVU Online Master of Science in Software Engineering we offer, ranked #13 in US News, or the MS in Computer Science we offer on campus in beautiful Morgantown, West Virginia. (sorry, I had to put in a plug for our programs) If you don't have the graduate degree when you begin, start as soon as possible as most employers offer some employee benefit, paying for some or for the entire degree.
Dale Dzielski MBA, CMA®, PMP®, SAFe® 4 Agilist: Gain knowledge in Statistics, Data Analytics, cybersecurity, cloud computing, artificial intelligence as well as understanding of Agile Methodology, architecture and design principles/concepts, and development tools such as Jira and GitHub. These will continue to grow in importance to your career. Also, keep watching for disruptive technologies. These will change the way we live and perform our jobs such as the impact AI has already had. I can't name them now because they haven't been innovated or named yet. In fact, you may become a part of doing so.
Jacob Schrum: When it comes to any technology-based field, it is extremely important to be able to learn new things. The tools that today's graduates end up using down the line probably don't exist yet, but there are still foundational skills that are important for graduates to have. The Southwestern University Computer Science program teaches students the core knowledge in data structures, algorithms, programming languages, and more that they need to succeed in various careers related to computer science, but we also give them the chance to do meaningful project-based work that sets them up for career success. This is especially true in the CS Capstone course, which involves meeting with a real-world client, discussing their needs, and then engineering a software solution to meet those needs. This experience allows students to engage with modern tools in an applied context, and requires them to develop the soft skills of communication and negotiation to satisfy the needs of their client.
Jacob Schrum: Generative AI is obviously affecting many industries. Although these systems can write code, this will not eliminate the need for skilled coders and problem solvers. However, those entering the field now can use generative AI systems to quickly write formulaic boiler-plate code, which will give them more time to focus on real problem solving. Systems like ChatGPT, Gemini, and Claude can also serve as interactive troubleshooting tools that can be more effective than searching the web for a specific answer to a very obscure problem. Still, there is ultimately no substitute for having the actual skills to do these tasks on your own. These systems are improving, but they don't get everything right, and they have a major problem with knowing when they are wrong. Furthermore, certain companies and industries don't want their proprietary code disclosed to companies that own these AI systems, and thus do not allow employees to use them. I'll also note that skills not just in using AI systems, but in creating them will be in high demand. Granted, only a few big companies realistically have the kinds of resources to create the models behind ChatGPT, etc, but other companies can either use these models, or make their own much smaller scale models. Furthermore, Machine Learning skills were in high-demand even before generative AI hit the scene, so I would recommend focusing on those skills.
Jacob Schrum: This is definitely not my area of expertise as someone who has mainly been confined to academia for most of his career, but from what I can see, the demand for the skills our students have is still high enough. The main challenge seems to be landing that first job. Once that has been accomplished, it is on the student (now employee) to demonstrate their worth, and keep seeking opportunities to learn and improve. If the company is not giving them the chances for advancement or has a bad working environment, then they should be on the lookout for better opportunities. Granted, there have been some significant layoffs in the tech industry, and that does mean that new graduates entering the market are sometimes in competition with more experienced job candidates. However, the salary expectations of those experienced candidates can make entry-level positions less appealing to them, so there are still opportunities for those entering the field. I suppose this is sort of an unusual way to respond to a question about maximizing salary potential ... I understand that everyone wants to make money, but it is important to be realistic about the job market. Once you have an offer, you can bargain a bit, and you can always be on the lookout for better opportunities, but I think that early on it is a bit more important to gather experience and a steady work record. Ultimately, one will have to weigh the tradeoffs between the opportunities they actually have, and act accordingly.
Lyle Ford: Having a broad base of skills, both technical and interpersonal are very valuable. Often, physics majors are hired to be problem solvers and each problem has its own set of unique conditions that may require a different set of skills to solve. The ability to be an effective team member is vital and proof of that will make you stand out. Evidence of independent work is also helpful so highlight and research or internship experiences you have had.
Lyle Ford: Be flexible and open to new experiences. Technology changes rapidly and your skills will have to evolve to keep up. You will always need your creativity and problem solving skills, but the way in which you implement them will change with your environment which will require you to constantly update your skillset. Always look for opportunities to network. This can give you insights into developing areas and open doors for future paths you may be unaware of.
Lyle Ford: Computer skills (programming, working effectively with AI, and the like) will be important as the world continues to automate. The ability to design, build, and repair electronic and electromechanical systems will also be important for the same reason.
Aakash Tyagi: Salary potential is truly in the eyes of the beholder. Technical depth of knowledge and skills is quintessential, followed closely by a demonstrated track record of willingness to learn and adapt, and ability to communicate clearly.
Aakash Tyagi: (a) Ability to work at the intersection of AI/ML and vital fields like bioengineering, finance, environmental sciences, Cyberphysical systems, etc., (b) Continual learning and adaptability to changing technology landscape, (c) Critical thinking, problem solving in medium to large team structures.
Aakash Tyagi: Treat your career as a marathon, not a sprint. Early years in one's career are best spent understanding the technology at its core and what drives innovation. You'll be a great developer and a great leader if your technical fundamentals are strong. This has never been so true than now in the age of generative AI and LLM where creativity and depth of understanding is what will set you apart from others (human and machine).
Dr. Frank Mitropoulos Ph.D.: As you begin your career in Computer Applications, remember that the technology industry highly values adaptability and continuous learning. Commit to staying current with emerging technologies, programming languages, tools, and methodologies. Engage in online courses, attend workshops, and network with other professionals in your field. This dedication to self-learning and the connections you make can lead to job opportunities, mentorship, and collaborations that could shape your future career path.
Dr. Frank Mitropoulos Ph.D.: Maximizing your salary potential as a new graduate with a Computer Applications degree involves strategic positioning, skill enhancement, and effective negotiation. Following are a few strategies to help increase your salary now and in the future: Specialize in High-Demand Areas: Identify and specialize in high-demand areas that generally offer higher salaries. Build a Strong Portfolio: Develop a portfolio that showcases your skills. A compelling portfolio can strengthen your position during salary negotiations. Develop Soft Skills: While technical skills are essential, soft skills like problem-solving, communication, and leadership hold equal significance. Enhancing these skills can give you an edge in negotiations. Do your Homework and Negotiate: Some industries and locations offer higher salaries. Decide what type of industry you want to focus on and do the background research needed to determine whether your skills will help as leverage. Use your portfolio, certifications, and skill set to strengthen your position. Be ready to articulate your value and how you can contribute to the company's success.
Dr. Frank Mitropoulos Ph.D.: As we look toward the future of careers in Computer Applications, several skills stand out for their growing importance. These skills revolve around specific technologies that are expected to continue to grow and evolve. Technologies related to Cloud Computing, Artificial Intelligence (AI), Cybersecurity, and Data Science are quickly evolving and being applied across the technology sector. Cloud Computing: Given the widespread adoption of Cloud services, Cloud computing expertise is indispensable. Understanding how to leverage platforms like Azure, AWS, and Google Cloud is crucial to developing scalable, efficient solutions that meet business needs. Artificial Intelligence: AI and Machine Learning are transforming the world. Skills in these areas to solve real-world problems will be even more critical in the future. Cybersecurity: Digital threats are becoming more sophisticated. Safeguarding data, networks, and systems will require encryption, intrusion detection, development, and regulation skills. Data Science: Skills in Data Science will be increasingly sought after as businesses embrace data-driven decision-making. Extracting meaningful insights from extensive datasets and effectively communicating these findings will be essential. Soft skills: Finally, soft skills such as teamwork, problem-solving, and effective communication cannot be overlooked. Adapting, communicating, and leading will be essential for success.