Apolis
Node JS/Typescript Developer
Location: Denver, CO
Job Description: Looking for a Node JS/Typescript engineer to work in a small, agile team. The team creates REST and event-driven microservices that focus on using caching and reporting to improve our customers' experience. The team works at scaling, handing many millions of REST and Kafka events each 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.
MAJOR DUTIES 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.
REQUIRED QUALIFICATIONS •Strong experience with Node.js and Typescript •Understanding of DynamoDB or other key-value stores and NoSQL databases •Experience using AWS managed services •Experience with caching architectures, particularly Redis •Strong experience with containerization and container orchestration, (Docker, Kubernetes, Helm, Istio, Argo, etc). •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 English •Strong 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. •Experience with building and designign event-driven systems. •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.
Education BA/BS in Information Technology, Computer Science, related field or equivalent combination of education and experience
Job Description: Looking for a Node JS/Typescript engineer to work in a small, agile team. The team creates REST and event-driven microservices that focus on using caching and reporting to improve our customers' experience. The team works at scaling, handing many millions of REST and Kafka events each 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.
MAJOR DUTIES 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.
REQUIRED QUALIFICATIONS •Strong experience with Node.js and Typescript •Understanding of DynamoDB or other key-value stores and NoSQL databases •Experience using AWS managed services •Experience with caching architectures, particularly Redis •Strong experience with containerization and container orchestration, (Docker, Kubernetes, Helm, Istio, Argo, etc). •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 English •Strong 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. •Experience with building and designign event-driven systems. •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.
Education BA/BS in Information Technology, Computer Science, related field or equivalent combination of education and experience