Job Overview
Role: Software Engineer – (Summer Internship) Location: Bangalore Experience: 0-0 Qualification: B.E / B.Tech Key Skills: Software engineering fundamentals, Networking protocols, Application development, Embedded systems development, Python
Job Description
As a Software Engineer Intern, you will be deeply integrated into the team, focusing on coding, testing, and continuous learning. Your responsibilities will include: Communicating status and issues effectively to the team and sharing knowledge. Performing routine assignments requiring basic knowledge of fundamental software principles. Collaborating with your immediate team and contributing to small projects and features. Developing an understanding of the software development lifecycle (SDLC) and agile engineering practices (requirements analysis, design, coding, unit testing, etc.). Analyzing user requirements and understanding their impact on technical design features. Writing correct code with assistance and supporting test code refining/rewriting. Assisting with tests for scaling reliability and velocity. Applying secure coding principles and following secure coding guidelines. Supporting senior team members in troubleshooting and debugging complex issues. Becoming proficient in at least one large area of the codebase while maintaining a high-level understanding of other components.
Skills and Eligibility Criteria
Educational Background: B.E/B.Tech degree
Experience: Freshers
Mandatory Technical Skills: Networking Protocols:
- Solid understanding of CS fundamentals and software engineering with a quick learning aptitude.
- Fundamentals of TCP/IP networking, routing, and switching.
- Basics of routers, switches, and network debugging tools (hands-on experience is a big plus).
- Understanding of security technologies (Firewalls, IPS/IDS, VPN, IPsec, TLS) and threat vectors.
- Strong programming and scripting skills (e.g., Python) with an inclination toward performance optimization.
- Familiarity with multiple development environments.
- Strong inclination towards comprehensive testing and excellent troubleshooting/debugging skills.
Application Software:
- Solid understanding of object-oriented design and programming.
- Fundamentals of TCP/IP networking concepts.
- Strong Python programming and scripting knowledge.
- Ability to think towards scaling applications to the cloud.
- Interest in User Experience (UX) and User Interface (UI) design and development.
- Hands-on exposure to open-source or mobile application development is highly advantageous.
- Strong testing mindset and exposure to debugging application programs and tools.
Embedded and Systems Development:
- Solid understanding of computer science fundamentals and operating systems.
- Strong system programming and Python scripting skills.
- Exposure to kernel programming, user space, and system space.
- Familiarity with device drivers and Board Support Packages (BSPs) is a plus.
- Strong foundation in system-level debugging techniques and related tools.
- Creative problem-solving ability and strong troubleshooting skills.