1

Professional Software Engineer Jobs in Iowa (NOW HIRING)

Associate Software Engineer

Waterloo, IA · Remote

$60K - $107K/yr

HS Diploma * 2 years of software development experience (academic or professional) using modern programming languages (e.g., Python, Java, or C ) * 1 years experience working with AWS Cloud Services ...

Senior Software Engineer

Des Moines, IA · Hybrid

$119K - $157K/yr

As a Senior Software Engineer, you will serve as the highest-level engineering execution ... Represent Kemin IT in relevant professional communities; bring external best practices and emerging ...

Senior Software Engineer

Des Moines, IA · Hybrid

$119K - $157K/yr

As a Senior Software Engineer, you will serve as the highest-level engineering execution ... Represent Kemin IT in relevant professional communities; bring external best practices and emerging ...

Senior Software Engineer

Des Moines, IA · On-site

$119K - $157K/yr

As a Senior Software Engineer, you will serve as the highest-level engineering execution ... Represent Kemin IT in relevant professional communities; bring external best practices and emerging ...

The Software Engineer will work with colleagues to deliver reliable and scalable applications that ... Demonstrated ability to communicate clearly and professionally with team members and stakeholders.

Sr. Software Engineer

Des Moines, IA · On-site

$119K - $157K/yr

Job#: 3036110 Sr. Software Engineer Location: Des Moines, Iowa (Partial Remote) Role Overview Our ... In terms of professional development, Everforth Apex hosts an on-demand training program, provides ...

Ultimately, we appreciate the uniqueness of a company where talented professionals work ... As an Intermediate Software Engineer, you will build features using specdriven development and Kiro ...

Cottingham & Butler is seeking a highly motivated Software Engineer with deep AI expertise to join ... To deliver on that promise, we aim to hire, train, and grow the best professionals in the industry.

Cottingham & Butler is seeking a highly motivated Software Engineer with deep AI expertise to join ... To deliver on that promise, we aim to hire, train, and grow the best professionals in the industry.

Cottingham & Butler is seeking a highly motivated Software Engineer with deep AI expertise to join ... To deliver on that promise, we aim to hire, train, and grow the best professionals in the industry.

... 0-3 years of professional software development experience. Bachelors or Associates degree in ... Proficiency with a modern programming language (python, c#, java, Go, etc) * Front-end fundamentals:

next page

Showing results 1-20

Professional Software Engineer information

See Iowa salary details

$59.6K

$138.6K

$193K

How much do professional software engineer jobs pay per year?

As of Jul 14, 2026, the average yearly pay for professional software engineer in Iowa is $138,564.00, according to ZipRecruiter salary data. Most workers in this role earn between $112,700.00 and $162,500.00 per year, depending on experience, location, and employer.

What are the key skills and qualifications needed to thrive as a Professional Software Engineer, and why are they important?

To thrive as a Professional Software Engineer, you need strong programming skills, problem-solving abilities, and a relevant degree in computer science or a related field. Familiarity with version control systems (like Git), software development frameworks, and cloud platforms is typically required, and certifications such as AWS Certified Developer or Microsoft Certified: Azure Developer Associate can be beneficial. Excellent communication, teamwork, and adaptability are soft skills that help you collaborate effectively and navigate changing project requirements. These skills ensure you can build robust, scalable solutions while working efficiently within diverse technical teams.

What engineers make $300,000 a year?

Senior software engineers, especially those with specialized skills in areas like machine learning, cloud computing, or cybersecurity, can earn $300,000 or more annually. High compensation often involves experience, working at large tech companies, or holding leadership roles such as engineering managers or principal engineers.

What does a professional software engineer do?

A professional software engineer designs, develops, tests, and maintains software applications and systems. They use programming languages, development tools, and best practices to create reliable and efficient software solutions, often collaborating with cross-functional teams and following project requirements.

What engineer makes $500,000 a year?

Highly experienced software engineers, especially those in senior or specialized roles at large tech companies or in executive positions such as CTOs, can earn $500,000 or more annually. Compensation often includes base salary, bonuses, stock options, and other incentives, particularly in competitive markets or high-demand fields like AI, cloud computing, or cybersecurity.

What are professional software engineers?

Professional software engineers are trained experts who design, develop, test, and maintain software applications or systems to solve problems or meet user needs. They use programming languages, tools, and engineering principles to create reliable and efficient software. In addition to coding, software engineers often collaborate with other team members, participate in code reviews, and follow industry best practices to ensure high-quality software delivery.

What are some common challenges faced by professional software engineers when working on large-scale projects?

Professional software engineers working on large-scale projects often encounter challenges such as managing complex codebases, ensuring effective communication across multidisciplinary teams, and maintaining high code quality under tight deadlines. Coordinating with other engineers, testers, and product managers can be demanding, especially when handling dependencies or integrating new features. Staying updated with evolving technologies and adhering to best practices in version control and documentation are also crucial for successful project delivery.

What is the difference between Professional Software Engineer vs Software Developer?

AspectProfessional Software EngineerSoftware Developer
CredentialsBachelor's degree in CS or related field, certifications optionalSimilar educational background, certifications less common
Work EnvironmentOften in teams, involved in full project lifecycle, may work in corporate or enterprise settingsTypically focused on coding, testing, and implementation, in various settings including startups and freelance
Industry UsageWidely used in corporate, enterprise, and government sectorsCommon in startups, freelance, and smaller companies

The main difference lies in scope and responsibilities. Professional Software Engineers often have a broader role, including design, architecture, and project management, while Software Developers primarily focus on coding and implementation. Both roles require similar educational backgrounds, but the Professional Software Engineer may be expected to handle more complex projects and collaborate across teams.

Can I make 200k a year as a software engineer?

Senior software engineers with extensive experience, specialized skills, and working in high-cost-of-living areas or at large tech companies can earn salaries of 200k or more annually. Compensation often includes base salary, bonuses, and stock options, especially in competitive markets or leadership roles.
What are the most commonly searched types of Software Engineer jobs in Iowa? The most popular types of Software Engineer jobs in Iowa are:
What cities in Iowa are hiring for Professional Software Engineer jobs? Cities in Iowa with the most Professional Software Engineer job openings:
Embedded Software Engineer

$128K - $168K/yr

Full-time

Re-posted 2 days ago


Job description

Job Description:

Objective of role:

The Embedded Software Engineer is responsible for the design, development, testing, and support of embedded software solutions for both existing and new products, including new hardware bring-up, low-level hardware/software integration, and support of microcontroller-based embedded systems.

Expectations:
This role blends hands-on engineering with cross-functional collaboration, technical problem solving, product lifecycle support and software technical leadership where appropriate. The engineer will contribute to software architecture, product enhancements, and reliability validation while supporting internal teams, customers, and manufacturing operations.
This position requires strong analytical skills, a solid foundation in software engineering principles, and the ability to work independently across most phases of the development cycle. The ideal candidate is comfortable working close to the hardware and can efficiently diagnose and resolve low-level issues involving microcontrollers, memory, interfaces, sensors, and communication devices.
Main Duties and Responsibilities:

Software Design & Development
•    Develop, code, test, and debug new embedded software or enhancements to existing software for third-party customers and internal product lines.
•    Work from specifications with limited guidance to design and modify moderately complex software applications, tools, and utilities.
•    Apply software design theories, engineering principles, and scientific methods to create robust, maintainable embedded solutions.
•    Modify existing software packages to meet unique customer configurations and requirements.
•    Validate successive software versions to ensure proper integration with system hardware.
•    Bring up embedded software on new hardware platforms, including initialization and verification of microcontrollers, memory, clocks, interrupts, communication interfaces and peripheral devices.
•    Develop, integrate and debug low-level drivers and board support software for interfaces such as UART, SPI, I2C, ADC, USB, Ethernet, GPIO, etc.

Engineering Leadership & Departmental Support
•    Provide technical input to project schedules, development estimates, software-related planning activities and team training needs.
•    Coordinate technical activities with cross-functional project teams and communicate software scope, status, risks, and technical issues clearly.
•    Document designs, changes, and engineering analyses thoroughly and professionally.


Testing, Reliability & Verification
•    Determine test and analysis requirements to validate product reliability, performance, and parameter control.
•    Conduct or coordinate tests to evaluate failure limits, environmental susceptibility, component reliability, and overall product safety.
•    Participate in the design of product test equipment or production test systems when needed.
•    Interpret test results and translate findings into actionable engineering decisions.
•    Develop and execute bring-up, integration, and regression test plans for new hardware and firmware.
•    Diagnose issues related to startup behavior, communication failures, timing issues, memory, and interaction between firmware and hardware.

Cross Functional & Customer Support
•    Resolve software-related user complaints and respond to suggestions for improvements or enhancements.
•    Assist in the development of software user manuals and technical documentation.
•    Collaborate with technical staff to diagnose and resolve software issues.

Innovation & Product Development
•    Drive the electrical/software design process from concept through manufacturing release, including:
o    Creative concept development
o    Detailed design
o    Mathematical and scientific verification
o    Prototype build and evaluation
o    Engineering documentation
o    Production transition
•    Work closely with electrical engineering during schematic review, component selection and prototype bring-up to ensure software readiness and efficient debug.
Qualifications:
•    Bachelor’s degree in engineering (Software, Electrical, Computer Engineering, or related discipline required).
•    Minimum of 4 years of relevant experience in embedded software development or related engineering roles.
•    Proficiency in embedded programming languages (e.g., C/C++), version control (Git/Github) and real-time operating environments (FreeRTOS, MQX).
•    Strong understanding of hardware/software integration and system level design.
•    Ability to work independently across design, coding, testing, debugging, implementation, and documentation phases.
•    Excellent analytical, problem-solving, and communication skills.
•    Experience supporting manufacturing, field teams, or customer applications is a plus.
•    Demonstrated experience with new board bring-up, including debug of low-level hardware/software issues on prototype hardware.
•    Ability to read and work from schematics, datasheets, reference manuals and interface documentation.
•    Experience with embedded debug tools such as JTAG debuggers, oscilloscopes, logic analyzers and serial/protocol analysis tools.
•    Experience integrating communication and connectivity technologies such as Bluetooth/BLE, UART, SPI, I2C, USB, or Ethernet.
•    This role requires quarterly travel to our Fairmont, MN facility, with the possibility of additional onsite visits depending on project-specific needs.
 

#LI-Remote

Compensation Information:

salary range

$78,400 - $130,000

ITW is an equal opportunity employer. We value our colleagues’ unique perspectives, experiences and ideas and create workplaces where everyone can develop their careers and perform to their full potential. 


As an equal employment opportunity employer, ITW is committed to equal employment opportunity and fair treatment for employees, beginning with the hiring process and continuing through all aspects of the employment relationship. 


All qualified applicants will receive consideration for employment without regard to race, color, sex, gender identity, sexual orientation, religion, national origin, age, disability, protected Veteran status or any other characteristic protected by applicable federal, state, or local laws.