Job Title : Java Backend Engineer - R1012494
Location : Denver, CO (Resource should be in office 4 day a week in Denver location)
Duration : 6+ Months Contract
Pay Rate : $55 / hr. - $60 / hr.
Industry Background : Comm, Media, & Technology
Custom Skill Requirements :
- Java Backend Engineer
- Scala
- API
- Mongo DB
- NoSQL Database
Screening Questions :
Are you local to Denver, Colorado?If not local, are you willing to relocate to Denver, Colorado to be onsite day 1?Are you willing and able to travel to Denver, CO for 1-2x / month for client requirements?Do you have strong Scala backend engineer with microservices experience to work in a small, agile team?Do you have experience in the technology stack : Scala, Scalatra, Memcached, Kafka, MongoDB, docker, Kubernetes, Splunk and Datadog?Do you have strong experience with Scala backend API Implementation?Do you have expertise in end-to-end understanding of the system and testing the services?Do you possess a strong mindset with a willingness to learn new domains and technologies?Do you have strong experience with containerization and container orchestration, (Docker, Kubernetes, Helm, Istio, Argo, etc)?Job Description :
Charter is looking for a strong Scala backend engineer with microservices experience to work in a small, agile team. The team develops client-facing REST APIs that provide data for IP TV (television over the internet), for functionality such as consumer entitlement verification, on / off-net verification, parental control verification, and settings.
The technology stack includes Scala, Scalatra, Memcached, Kafka, MongoDB, docker, Kubernetes, Splunk and Datadog. All code is written in a functional style and is fully asynchronous using Scala Futures. The team works at scale, handling hundreds of millions of REST calls per day.
Engineers on this team create new microservices and improve existing microservices. Projects are usually of considerable complexity and require a mastery of development tools. Engineers are expected to design and implement scalable, dependable systems as needed. As this is a small team, engineers must be self-starters, capable of handling responsibility and making decisions.
Required Skills :
Strong experience with Scala back-end API implementationUnderstanding of MongoDB or other NoSQL databasesStrong mindset with a willingness to learn new domains and technologiesExpertise in end-to-end understanding of the system and testing the servicesExperience with test-driven development and automated testing frameworksExperience using AWS managed servicesExperience with caching architectures, particularly MemcachedStrong experience with containerization and container orchestration, (Docker, Kubernetes, Helm, Istio, Argo, etc).Strong experience with monitoring technologies (Splunk, Instana, Datadog, Prometheus, etc).Knowledge of API documentation, especially Swagger (OpenAPI)Experience using CI / CD automation (Jenkins, Gitlab)Skills / Abilities and Knowledge :
Ability to read, write, speak and understand EnglishStrong experience working with DevOps engineers to build and deploy infrastructure with cloud deployment technologies.Strong Understanding of Scrum / Agile development methodologies.Capable of delivering on multiple competing priorities with little supervision.Experience with building and designing REST APIs using scala.Experience with software security principles and patterns.Ability to collaborate with and contribute to a common culture of excellence.Experience with test-driven development and automated testing frameworks.Must be capable of delivering on multiple competing priorities with little supervision.Major roles and responsibilities :
Actively and consistently supports all efforts to simplify and enhance the customer experience.Code and perform unit and integration testing of software to ensure proper and efficient execution and adherence to business and technical requirements.Code, test, debug, and enhance software.Write programs according to specifications and define specifications for complex programs.Monitor and repair critical systems on an as needed basis.Develop and maintain technical documentation.Serve as final escalation point to resolve incidents and problems for production applications and web services supported by the team in accordance with identified Service Level Agreements.Collaborate with internal customers, technical and architecture teams to solve complex software problems.Provide system users and management with system analysis and improvement recommendations.Identify and recommend system design / requirements needs for software enhancements.Implement, monitor, test, and audit new software programs to maximize efficiency of software systems.Participate in continuous performance improvement sessions to discuss opportunities to improve processes and / or standards.Coordinate with technical teams to analyze and resolve software related problems causing operational difficulties, advising on specialized features and functions.Maximize the efficiency of the various software systems by implementing, monitoring, testing and auditing new software programs.Follow established configuration / change control processes.Collaborate with customers and internal / external technical teams to identify software problems and communicate remediation plans.Mentor and coach junior team members.