Java Backend Developer with GraphQL – 2 PositionsDenver, CO (Remote for now)12+ MonthsMax 60/HrResponsibilitiesBuild backend services and APIs to drive existing and new features for web appsWork with business analysts and operations to define, capture, and use real-time event data for business insights and product featuresCollaborate with infrastructure engineering teams to participate in, validate, and evolve how we build, test, and deploy code in a distributed Service-Oriented ArchitectureAlter existing and develop new data access and protection patterns to ensure personal data is safe and secure, at scalePartner with Design to innovate, prototype, and lead new initiatives to improve our user experienceRequirements4 - 8 years' experience in designing and developing Micro Services & Cloud native applicationProven skills in Java, Spring, Spring boot, GraphQL, Hibernate, JPA, REST web services, Spring SecurityProven experience with AWS stackComfortable with tackling ambiguous problems and unblocking yourselfGood understanding of architectural patterns of a large, high-scale web application (e.g., well-designed APIs, high volume data pipelines, efficient algorithms)Understanding of data structures and problem solving approaches, and ability to articulate trade offsStrong understanding of Domain Driven Design (DDD), 12 factor Apps, Microservices design patternsStrong fundamentals – OOPS concepts, SOLID principles, Data Structures/Algorithms, Exception Handling, Coding Standards, LoggingPassionate about writing clean, modular and unit testable codePossesses strong verbal and written communication skillsExperience with Agile developmentKnowledge of unit testing frameworks – preferably JUnitGood knowledge of Jenkins, SonarQube, Git, Deployment ArchitectureBE/BTech in Computer Science / MIS or equivalent work-related experience