Primary responsibilities fall into the following categories:
- Experience using TDD to write clean maintainable code that meets business objectives.
- Thrives in collaborative environments and enjoys working closely with stakeholders at all levels of the business to define and deliver feature.
- Experience on designing, building large scale application and micro service architecture.
- Experience on production support and maintenance.
- Enjoys pair programming 100% of the time and using Agile methodologies.
- Finds simple solutions to complex problems and embraces an iterative process.
- Excited to use unfamiliar technologies while stepping outside of your technical comfort zone to grow your skills.
- Enjoys tools that improve productivity and automate repetitive tasks.
Skills - Experience and Requirements
- 8+ years of Software Development experience in a variety of programming languages.
- Strong development experience using Java-8 with Spring Frameworks and Spring Boot.
- Strong Unix/Linux/Mac OS experience.
- Prefers to work in an XP process (pair programming and TDD).
- Proficient working with relational databases (Postgres and MySQL) as well as NoSQL technologies like Redis, DynamoDB and MongoDB.
- Experience working with RabbitMQ or other messaging system.
- Experience building service-oriented solutions and RESTful microservices.
- Strong understanding of Java multithreading, concurrency and memory management.
- Strong background in building dynamic, high-volume and scalable system with Java using an Agile development methodology.
- Experience with cloud technologies(AWS/AzureGCP) is a strong plus.
- Shell scripting (bash, sh, zsh).
- Experience using Git, Rally, Jenkins and Cloud Foundry.