1

Software Engineer Internships Jobs in Iowa (NOW HIRING)

Developing new designs using 3D modeling software like Solidworks for carts or production tools ... Internship/co-op experience is preferred * Must enjoy hands on product exposure * Electrical skills ...

Control Systems Engineer

Dubuque, IA · On-site

$70K - $100K/yr

Work with design, software, and test engineers to develop and validate control system solutions ... Experience through internships, co-ops, academic projects, or professional engineering roles.

Internship/co-op experience is preferred * Must enjoy hands on product exposure * Electrical skills ... AutoCAD or similar software a must * Multi-tasking, problem solving and strong communication skills ...

next page

Showing results 1-20

Software Engineer Internships information

See Iowa salary details

$22.5K

$98.5K

$177.5K

How much do software engineer internships jobs pay per year?

As of Jun 9, 2026, the average yearly pay for software engineer internships in Iowa is $98,494.00, according to ZipRecruiter salary data. Most workers in this role earn between $61,100.00 and $112,700.00 per year, depending on experience, location, and employer.

What types of projects or assignments do Software Engineer Interns typically work on?

Software Engineer Interns usually engage in real-world software development tasks such as writing and testing code, debugging applications, participating in code reviews, and contributing to team meetings. Interns often collaborate closely with experienced engineers, receiving guidance on best practices and exposure to the company’s development workflow. Depending on the organization, you might work on building new features, improving existing systems, or assisting with quality assurance. These assignments are designed to build your technical skills while making a meaningful impact on ongoing projects. The internship experience provides valuable insights into working within agile teams and helps you prepare for a full-time software engineering role.

What are the key skills and qualifications needed to thrive in the Software Engineer Internships position, and why are they important?

To thrive as a Software Engineer Intern, you need foundational programming skills in languages such as Python, Java, or C++, and an understanding of computer science principles, often supported by progress in a related degree. Familiarity with code versioning tools like Git, integrated development environments (IDEs), and exposure to collaborative platforms such as Jira or GitHub are typical technical requirements. Strong problem-solving abilities, adaptability, eagerness to learn, and effective communication skills help interns excel in team-based environments. These attributes are crucial for quickly integrating into engineering teams, contributing to projects, and maximizing learning during the internship.

What is a Software Engineer Internships job?

A Software Engineer Internships job is a temporary position where students or recent graduates gain hands-on experience in software development. Interns typically work on coding, debugging, testing, and collaborating with experienced engineers on real-world projects. These roles help build technical skills, industry experience, and professional networks. Many internships serve as a pathway to full-time software engineering positions.

What are the most commonly searched types of Software Engineer Internships jobs in Iowa? The most popular types of Software Engineer Internships jobs in Iowa are:
What cities in Iowa are hiring for Software Engineer Internships jobs? Cities in Iowa with the most Software Engineer Internships job openings:
Infographic showing various Software Engineer Internships job openings in Iowa as of June 2026, with employment types broken down into 95% Full Time, 4% Part Time, and 1% Temporary. Highlights an 86% Physical, 5% Hybrid, and 9% Remote job distribution, with an average salary of $98,494 per year, or $47.4 per hour.
Software Engineer 1-Automation

Full-time

Posted 21 hours ago


Berkshire Hathaway Energy rating

6.5

Company rating: 6.5 out of 10

Based on 18 frontline employees who took The Breakroom Quiz


Job description

Our team is building a modern hybrid cloud platform from the ground up to support the next generation of applications across the organization. The platform provides foundational infrastructure, container runtime environments, developer tooling, messaging systems, and observability capabilities required to run reliable and scalable applications.

This is a greenfield engineering opportunity. As a Software Engineer I, you will contribute to the development of automation, tools, and workflows that support platform and infrastructure operations. You will work under the guidance of more senior engineers and gain handson experience with modern infrastructure, automation practices, and cloudnative technologies.

Our approach emphasizes softwaredriven infrastructure, infrastructureascode, Gitbased workflows, and modern observability practices. Engineers at this level focus on building strong technical foundations, learning platform concepts, and contributing to production systems in a supported environment.

MidAmerican Energy Company, a Midwest utility, provides regulated electric and natural gas service to more than 1.6 million customers in Illinois, Iowa, Nebraska and South Dakota. The company owns and operates a portfolio of power-generating assets, approximately 61% of which is wind generation.MidAmerican Energy Company is proud to be an equal opportunity employer. All qualified applicants will receive consideration for employment without regard to race, color, religion or religious creed, age, national origin, ancestry, citizenship status (except as required by law), gender (including gender identity and expression), sex (including pregnancy), sexual orientation, genetic information, physical or mental disability, veteran or military status, familial or parental status, marital status or any other category protected by applicable local, state or U.S. federal law. Employees must be able to perform the essential functions of the position, with or without an accommodation.

Bachelor's degree in management information systems (MIS), computer science or related technical field or equivalent work experience. (Typically four years of related, progressive work experience would be needed for candidates applying for this position who do not possess a bachelor's degree.) 

Prior related internship experience required

Basic knowledge of programming in client/server and/or web development environment 

Foundational programming knowledge in at least one language such as Go, Python, or Java

Familiarity with Linux environments and basic scripting

Exposure to Git or version control systems

Interest in automation, infrastructure, and platform engineering concepts

This role supports improvements in how work gets done across the organization by contributing to software and automation that reduce manual effort, improve efficiency, and support reliable operations.

You will assist in developing tools, services, and workflows that support developer and operational needs, including infrastructure provisioning, deployment pipelines, environment management, and routine operational tasks. You will collaborate with team members across systems and teams to help streamline how applications are built, deployed, and operated.

Under guidance, you will help identify manual or repetitive work and contribute to automation or process improvements. You will use code, scripts, APIs, and integrations to help replace manual tasks with repeatable, scalable solutions.

Success in this role requires curiosity, willingness to learn, and a mindset focused on improving systems. Engineers at this level grow their skills by contributing to welldefined automation efforts and gradually taking on more complex work.

We value strong foundational programming skills and curiosity over prior domainspecific experience.

Core Responsibilities

Platform Automation Support

  • Assist in identifying manual operational processes that can be automated
  • Contribute to automation that improves consistency and reliability under guidance
  • Support development of tools used to provision and manage infrastructure

Automation Development & Tooling

  • Develop automation using modern programming languages such as Go, Python, or Java
  • Contribute to internal tools that improve operational workflows
  • Integrate automation with existing APIs, platforms, and operational tooling

Infrastructure & Platform Integration

  • Assist with infrastructure provisioning and lifecycle automation using infrastructureascode tools such as Terraform
  • Support automation related to Kubernetes platforms, CI/CD pipelines, and Gitbased workflows
  • Collaborate with infrastructure and platform teams on defined automation tasks

Process Improvement & Toil Reduction

  • Identify repetitive or manual tasks and raise opportunities for automation
  • Contribute to simplifying workflows and reducing operational effort
  • Implement improvements following established patterns and guidance

Operational Automation

  • Help develop automated workflows for common operational tasks such as provisioning and environment setup
  • Assist with automation that supports operational reliability and incident response

Observability & Reliability

  • Contribute to automation that integrates with monitoring and observability tools
  • Learn to use telemetry and system metrics to inform automation improvements

What Berkshire Hathaway Energy employees say

Pay

Benefits

Hours and flexibility

Workplace

Get the full story on Breakroom