About the role
Responsibilities:
- Code critical sections and key features of the product. Lead and solve key technical challenges in the overall system.
- Work in collaboration with architects to write low-level design documents and to create a technical roadmap.
- Re-architect existing algorithms and implementations. Work with simulations for functional performance.
- Perform code reviews and healthy peer feedback for the team.
- Mentor and guide team members technically. Observe and evangelize best technical practices.
Requirements:
- Education: Bachelor's or master's degree in computer science, software engineering, or a related field from a premier institute.
- Technical Skills: Proficiency in one or more programming languages such as Java, C++, Python, or C#. Experience with frameworks and libraries relevant to the technology stack.
- Problem-Solving: Strong analytical and troubleshooting skills. Ability to diagnose and resolve complex technical issues.
- Communication: Excellent verbal and written communication skills. Ability to convey technical information to non-technical stakeholders.
- Teamwork: Ability to work effectively in a team environment. Strong interpersonal skills and the ability to collaborate with colleagues at all levels.
Must Have:
- 6+ years of work experience, having demonstrated problem-solving skills.
- Have experience designing and implementing non-trivial software systems (e. g., using multiple processes/threads/IPC, etc. ).
- Development experience using Java, Python, Golang, or Erlang (either of these).
- Experience working on any microservice platform. Scalability Architecture.
- Experience working on REST-based API integration.
- Good RDBMS skills and experience in DB/SQL.
- Good understanding of design patterns, object-oriented design, and frameworks.
- Experience in algorithmic development. Good understanding of version control systems.