This position is responsible for designing complex modules, critical components or a whole application/product in its entirety. A staff software engineer has the vision to integrate it across multiple systems. This position works independently and is seen as a technical leader. The position is responsible for driving the design and development efforts related to architecture, scalability, availability and performance in alignment with the product/application roadmap.Essential Responsibilities:
- Proven track record of successful problem definition, decomposition, estimation.
- Expert in Design, Architecture, Development, Continuous Integration and Delivery, with an ability to take a deep dive in the implementation aspects if the situation demands.
- Leads impact assessment and decision related to technology choices, design /architectural considerations and implementation strategy
- Subject matter expert in processes and methodologies with ability to adapt and improvise in various situations.
- Expert in navigating through ambiguity and prioritizing conflicting technical asks.
- Demonstrates skills in influencing technical decisions within engineering and product teams and owns the technical architecture of the product/application.
- Expert in core data structures as well as algorithms and has the ability to implement them using language of choice when necessary - as a value offering.
- Defines and owns coding and design standards, ensures secure development practices, establishes expectations around performance, drives internationalization, and manages CI/CD pipelines.
- Work cross functionally with other business departments to align activities and deliverables
- Apply principles of SDLC and methodologies like Lean/Agile/XP, CI, Software and Product Security, Scalability, Documentation Practices, refactoring and Testing Techniques
- Bachelor's Degree in Computer Science or in "STEM" Majors (Science, Technology, Engineering and Math)
- A minimum of 8 years of professional experience in the below areas
- Languages and Frameworks
- Design Concepts
- Microservices, Cloud design patterns, Async development, REST API design, Database design, ORM and JDBC Template, Responsive Web Design, Single Page Application, Messaging, DevOps concept
- PostgreSQL (primary),MongoDB
- Cloud computing
- Setting up end-to-end web application using AWS ecosystem
- Maven, Junit, Profiler, Gulp, Node, Bower,Webpacks,3rd party visualisation library (D3, Highcharts, etc.)
- Strong oral and written communication skills.
- Strong interpersonal and leadership skills.
- Ability to influence others and lead small teams.
- Lead initiatives of moderate scope and impact.
- Ability to coordinate several projects simultaneously.
- Effective problem identification and solution skills.
- Proven analytical and organizational ability.