Ability to work with some of the smartest people on the planet
Competitive compensation plan
Flexible working hours - in some roles work from home
Employee development including training programs and mentor-ship
Career development and advancement opportunities
International travel opportunities- we are a global company
The Requirement :
You are one of the smartest people on the planet
Work with a team of architects, and tech leads to translate the system requirements into a sub-system/module design
Work with other sub-system developers to design, document and implement the interface modules
Implementing high-quality, high-performance code
Debugging and troubleshooting problems in test and in production
Create and execute the unit test plan and interface test plan
Should be able to decide upon subsystem design, algorithms to be used, standards to be practiced, test coverage that is required, etc.
Ability to work independently and collaboratively
Guide and mentor new team members
Ability to do research on standards, design and implementation methods/techniques, algorithms, development & testing tools and choose the appropriate ones for the sub-system/module development
Working with remote team, understand the requirements
Ready to work with Global Engineering team encompassing multiple time-zones
Readiness for travelling (10%)
BE or ME (or equivalent degree) degree in Engineering or Computer Science
2-6 years of experience in Software development of High Availability (HA) platforms and features for Data Networking products.
Excellent programming skills in C / C .
Knowledge of Basic Networking Concepts like TCP/IP, Switching and Routing Understanding of cluster management, related to Availability and Load Balancing Strong platform and RTOS knowledge (multithreaded programming, driver programming, OS internals)
Debugging and troubleshooting of problems in an embedded system using GDB, D-TRACE Hands-on development experience with HA architectures or middleware
Understanding of kernel level modules like Scheduling, Memory management and IPCs.
Usage of Profiling tools for CPU and Memory