To succeed in this challenging journey we have setup multiple co-located team across the globe (Hyderabad, US, Europe), embracing the scaled agile framework, a Micro Services approach combined with the DevOps model.
We have passionate engineers working full time on this new platform in Hyderabad and it’s only the beginning. You will have the chance to work with brilliant people and some of the best development and design firms in addition of working with cutting edge technologies as React, Elixir, Node.
js, Ruby, Docker, Kubernetes.
This position is responsible for architecting, designing, creating, testing, and ensuring the quality of moderately complex software for a major product or product line.
Principal Software Engineer will perform complex code modification, testing, and debugging tasks as well as provide high level research and analysis related to software design and development
We are looking for exceptional Java based full stack developers to join our team and also learn new technology as Node.js which some of our teams already use.
You will work jointly with Architect and DevOps to form a fully autonomous development squad and be in charge of one part of the product.
SKILLS & QUALIFICATIONS :
Minimum 5+ years of software engineering development experience background working with developing cloud based enterprise solutions.
Strong knowledge in working with REST API*, Web services and SAML* integrations
Experience working with databases preferably Postgres.
Experience with frameworks (Spring Boot, Ruby on Rails)
Experience with DevOps (Docker, Kubernetes, Ansible, AWS)
Experience in UI Test frameworks (CasperJS, PhantomJS, Mocha, Jasmine, JEST, Selenium, etc.)
Experience with code versioning tools, preferably Git (Github, Gitlab, etc) and the feature branch workflow
Good in multi threading, algorithms and complex problem solving skills
Advanced design, debugging and coding skills
Experience with automation tools like Maven, Gradle, NPM, WebPack, Grunt
Must know how to code applications on Unix / Linux based systems*.
Experience in working with Agile / Scrum environment*.
Challenge the status quo.
Encourage and use experimentation as a tool to achieve continuous improvement of team performance.
Support design and refactoring through rapid prototyping and experimentation during research and refactor spikes.
Write and maintain documentation to describe program development, logic, coding, testing, changes, and corrections.
Participate in self-directed learning activities aimed at developing deep expertise within technical domain, including reading relevant publications, participating in domain forums or groups etc.
Have a deep understanding of context within which our products are being developed, deployed and used.
Have a solid understanding of the user personas for the product within the technical domain and deep empathy for the needs of those users.
Strong analytical skills and the ability to understand complexities and how components connect and relate to each other
Coaching and mentoring skills.
Technical expert with in-depth programming and product knowledge and strong technical skills combined with project management and leadership ability.
Release / PI Planning
Prepare for Release Planning, including :
Support Product Management in program backlog refinement, and estimating features and epics.
Collaborate with the System Architects to :
Understand and communicate non-functional requirements relevant to the team / feature.
Identify and define Architectural epics and features in the Program Backlog, including refactors.
Capture and communicate how the system does what it does using whatever form of documentation is appropriate to serve the Release Planning process.
Actively participate in Release Planning :
Establish own capacity / velocity for each increment.
Support story refinement, help identify risks and dependencies.
Support the Agile Team in establishing achievable PI objectives.
Help to identify dependencies and foster cross team co-ordination.
Commit to the mutually agreed plan.
Prepare for Iteration Planning, including :
Actively participate in backlog refinement sessions in collaboration with other Agile team members.
Identify and capture backlog items local to the team, such as defects and refactors.
Participate in Iteration Planning, including :
Actively participate in team planning and contributing to team goals.
Work with the Product Owner to establish the acceptance criteria for a story.
Volunteer for and commit to delivering stories and tasks within the iteration.
Contribute to a statement of the iteration goals, working in partnership with the Product Owner to define the business objectives for the iteration.
EDUCATION AND CERTIFICATIONS :
BE or MCA or equivalent preferred
SUCCESS QUALITIES :
Personally Accountable for Team Success. We unleash our edge together.
Confident Achievers. We are bold.
Intellectually Curious. We are sharp.
Adaptable, Agile & Resilient. We are driven.
Customer First. We are real.