Job Role: Software Engineer – High Availability (HA)
Experience: 2+ Year
- 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 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
- 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
- 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