Software Engineering Intern, Cloud

Calix
2d$24 - $35Remote

About The Position

This is a full time, remote Summer Internship that can be based anywhere in the United States or Canada. Calix is looking for a Summer intern to join our Products team. In this role, you will be part of a unique and award-winning internship program within the company. The program provides the opportunity to learn new skills through training and on-the-job learning and the duration of the program is expected to be 90 days.

Requirements

  • Currently enrolled in an accredited university pursuing a degree in Computer Science, Computer Engineering, Information Technology, or a related field.
  • Programming experience (academic projects or internships) in Java or similar object-oriented languages.
  • Basic understanding of software development fundamentals, including: Object-Oriented Programming (OOP) Data structures and collections Exception handling and basic multithreading concepts
  • Familiarity with Linux environments and basic command-line tools.
  • Exposure to REST APIs and data formats such as JSON and XML through coursework or projects.
  • Basic knowledge of databases (relational or NoSQL), such as PostgreSQL or MongoDB.
  • Understanding of software version control systems like Git.
  • Strong curiosity and willingness to learn
  • Good problem-solving and analytical skills
  • Ability to work well in a team-oriented environment
  • Clear communication skills and openness to feedback
  • Passion for building scalable, reliable software systems
  • Able to work for the complete summer break (May - August or June - September).
  • Preference will be given to students entering their junior or senior years with previous work experience.

Nice To Haves

  • Exposure to microservices architecture, Spring Boot, or similar frameworks.
  • Familiarity with containerization concepts (Docker, Kubernetes) through labs or personal projects.
  • Awareness of CI/CD pipelines, build tools, or automation frameworks.
  • Basic understanding of networking concepts or telecommunications fundamentals.
  • Academic or project exposure to monitoring, logging, or observability tools (e.g., ELK stack).

Responsibilities

  • Design and develop software components: Assist in designing, coding, testing, and debugging software modules under the guidance of senior engineers.
  • Problem solving and learning: Investigate and help resolve software issues, analyze root causes, and learn best practices for improving performance and reliability.
  • Collaborate as part of a team: Actively participate in team discussions, design reviews, and brainstorming sessions to contribute ideas and learn how shared services are built and maintained.
  • Support high-availability concepts: Gain exposure to high-availability (HA) concepts such as redundancy, clustering, and failover mechanisms through hands-on tasks and projects.
  • Develop and consume REST APIs: Help develop, test, and integrate RESTful APIs to enable communication between software components.
  • Adopt modern technologies: Learn and apply new tools, frameworks, and technologies that improve development efficiency and software quality.
  • Follow engineering best practices: Use version control, follow coding standards, write unit tests, and document work clearly.
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service