Software Development Engineer
Key Responsibilities
Design and develop globally deployed cloud based micro-services and user interface solutions with high availability.
Participate in design discussions and ensure designs are aligned with architecture and roadmap.
Research and recommend relevant technologies towards overall technical strategy.
Champion test-driven development and participate in code reviews.
Conduct brown bag sessions and help towards building a strong technical team.
Role will be based on working experience/skills and knowledge – Junior/Mid/Senior/Lead levels
Required Skills & Experience
Bachelor's degree in Computer Science, Engineering, or related discipline
In-depth experience building Responsive websites using ReactJS, NodeJS and Webpack.
In-depth development experience with Java/J2EE.
Experience using Spring boot or other micro-services frameworks
2+ years of UI development experience with ES6 Java Script and CSS preprocessors(LESS, SASS).
Experience building highly scalable, distributed and fault tolerant cloud native applications.
Experience developing RESTful Web Services, Web APIs, and micro-services.
2+ years of solid experience with SQL and NoSQL based solutions.
Very good knowledge of CI/CD build pipelines using Jenkins 2.0 or similar tools.
Ability to write clean, modular, reusable code (using design patterns) and experience with unit-test driven approach to development.
Bonus Skills & Experience
Reactive programming - RxJava, Akka Play.
Experience with AWS deployments.
Experience working in a DevOps environment with continuous deployments.
Latest JavaScript Libraries like VueJs, Yarn, Babel.
Experience using docker & related orchestration tools to build, ship and run applications.