Key Responsibilities
Develop modern web applications based on business requirements and industry standards
Collaborate with internal and external stakeholders to convert product requirements into technical needs
Create and maintain the architecture and design documentation using UMLs, application flows, API specifications
Contribute to the decision-making process for the selection of software products and component design solutions
Contribute to software development guidelines and standards and promote their adoption within the engineering team
Adopt software development best practices, standards, and guidelines
Contribute to software quality, test source code your write, maintain code coverage and quality
Develop and ship applications using best CI/CD practices
Follow agile methodology for software development
Innovate constantly and keep systems up to date with current technologies
Advocate code quality and good documentation among team members
Participate in providing production support as part of 24/7 follow-the-sun model
Requirements
BE/MS degree in Computer Science or equivalent experience
8+ years of experience in building full-stack software applications
Working experience in designing and developing high performance, scalable web applications and services
Profound understanding of software architecture (SOLID, KISS, BDUF), microservices architecture, software design patterns, data structures, and algorithms
Solid knowledge and experience in Java/Kotlin, Junit, SonarQube, Spring, Redis, Kafka, Hibernate
Unit testing and static code analysis/code quality skills
Solid understanding of Web standards and protocols
Working experience with git, Gradle, CI tools (BitBucket, Jenkins, GitHub, GitLab, etc)
Experience delivering Dockerized applications
Profound understanding and experience with CI/CD pipelines, Docker, and Kubernetes
Experience with production monitoring and alerting setup (Prometheus, ELK, Grafana, Datadog, New Relic, PagerDuty, etc)
Working experience with Cloud Infrastructure (GPC, AWS, Azure, etc)
Working experience with NoSQL databases (Redis, Couchbase, Cassandra, etc.)
Preferably working experience with identity protocols OAuth, SSO, SAML
Preferably working experience with JavaScript (ES6/7), Node.js