1. Ownership of technical designs, code development, and component test execution to demonstrate alignment to the functional specification.
2. Continuously evaluate existing software to identify areas of improvement and ensure architectural integrity as additional features are added
3. Take care of the development of critical components and POCs for new technologies to be used. Proactively identify architectural challenges, and collaborate
with the product owners, product manager, engineering manager and engineers to propose solutions.
4. Developing and demonstrating a broad set of technology skills in Ruby on Rails, Elixir, leading front-end technologies, micro service design patterns, open
source libraries/frameworks, and technology architecture concepts.
5. Identify problems before they become impediments and create solutions through collaboration.
6. Apply knowledge of common, relevant architecture frameworks in defining and evaluating application architectures. Define best practices and guidelines.
7. Perform code reviews and provide critical suggestions for fixes and improvements
8. Fixing and performance tuning Ruby and Elixir based web applications
9. Supporting issue analysis and fix activities during test phases, as well as production issue resolution.
10. Contribute as active and competent full stack hands on developer if need be
11. Using configuration management and integration/build automation tools to lead and deploy code.
12. Guide engineers with the creation and maintenance of test automation frameworks, approach
13. Collaborate closely with the Engineering Manager on the aspects of team morale, operational and personnel issues as they arise.
14. Provide technical leadership to the product teams through mentoring and coaching
15. Guide team development efforts for timely and quality delivery.
16. Identify and encourage areas for growth and improvement within the team.
17. Assist in onboarding developers, implement training and knowledge transfer as needed.
● 14+ years of experience developing, designing secure, scalable and highly available software solutions (a hands-on coder)
● Strong experience and coding skills with Ruby on Rails along with other common libraries such as RSpec and Resque.
● 5+ years of experience mentoring, coaching team of software developers
● Knowledge of modern software architectures, single page apps, modern web stack, SSO and other system integrations
● Through understanding of various coding patterns and experience working with at least one backend programming language
● Exposure to multiple coding languages (Ruby/Java/Elixir) would be added advantage
● Extensive knowledge of design patterns and very good knowledge and experience of using DDD
● Hands on data modeling and database design experience
● Experience with software development lifecycle (SDLC) processes and Agile development practices (Scrum, Kanban, BDD/TDD)
● Experience working with modern front end technologies like Elm, React, Vue, Angular
● Experience working with MongoDB. Knowledge of PostgreSQLwould be added advantage
● Knowledge of DevOps tools like Docker, Kubernetes, Octopus, Jenkins will be a plus
● Critical thinking and problem solving skills
● Experience with accessibility guidelines
● Excellent written and verbal communication skills
● Internally motivated, able to work proficiently both independently and in a team environment
● Team player; has the ability to lead a team of skilled engineers