Calix is looking for a Summer intern to join their Products team as part of a unique and award-winning internship program. The intern will assist in designing, coding, testing, and debugging software modules while gaining exposure to high-availability concepts and developing REST APIs.
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
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
- 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)