Role overview
About this role
Join our engineering team as a Software Engineering Intern and gain hands-on experience building, testing, and improving software in a collaborative environment. You will work with experienced engineers, contribute to real projects, and develop practical skills in software development, automation, cloud technologies, and networking. This internship is designed for students or recent graduates who are curious, motivated, and eager to learn. Collaborate with engineers and product team members to understand requirements and complete assigned development tasks. Write, test, debug, and maintain code with guidance from experienced team members. Contribute to small features, automation scripts, integrations, or improvements to existing applications. Participate in code reviews, team discussions, demonstrations, and Agile ceremonies. Create and update technical documentation, test notes, and troubleshooting instructions. Use version control and development tools to manage changes and collaborate with the team. Learn the team’s software development lifecycle, coding standards, testing practices, and deployment processes. Ask questions, share progress, and incorporate feedback to strengthen technical and professional skills. Support testing and investigation of defects in development or test environments. Explore new tools and technologies relevant to the team’s projects. Currently pursuing, or recently completed, an associate, bachelor’s, or graduate degree in computer science, software engineering, information technology, engineering, or a related field. Foundational programming experience gained through coursework, personal projects, internships, boot camps, or open-source contributions. Familiarity with at least one programming language, such as Python, Java, JavaScript/TypeScript, C++, C#, or Ruby. Basic understanding of software development concepts, data structures, debugging, and testing. Strong problem-solving skills and willingness to learn unfamiliar tools and technologies. Ability to communicate clearly, ask questions, and work effectively in a collaborative team. Ability to organize work, meet agreed deadlines, and respond constructively to feedback. No prior full-time professional software development experience is required. Coursework or project experience with web technologies, APIs, databases, or front-end frameworks. Familiarity with Git or another version-control system. Exposure to unit testing, Agile practices, or continuous integration and delivery concepts. Interest in cloud platforms, containers, Kubernetes, Red Hat OpenShift, DevOps, site reliability engineering, or automation. Basic knowledge of Linux, networking, application security, or cybersecurity principles. A portfolio, GitHub profile, hackathon project, or open-source contribution that demonstrates curiosity and hands-on learning.