This senior software engineering role sits on the company's product team and covers work from requirements through to running and maintaining applications.
The role involves frontend and back-end integration, testing, CI/CD, cloud deployment and production support.
Responsibilities
Compare customer and business expectations with the current product and solutions to find gaps, updates and changes, including per-iteration work under agile.
Sort requirements into their applicable types and flag solution risks early in requirements gathering, then tell the relevant stakeholders and propose fixes.
Help write user stories for components, applications and complex features under agile.
Help design solutions so that processes and applications work together across specific product components and modules.
Weigh design trade-offs against business requirements.
Turn high-level designs into detailed designs, including mock screens, pseudo code and functional logic for specific modules.
Build and configure lean code for whole components and applications, meeting business, technical and non-functional needs, with a focus on low maintenance cost, high availability and scalability.
Help choose languages, development standards and tools for coding and configuration.
Learn the basics of new languages and frameworks that will be useful for future work.
Write scripts that automate repetitive and routine tasks in CI/CD, testing and other processes where suitable.
Build telemetry features on your own initiative when needed.
Make sure security policy requirements are applied to components and applications during development and configuration.
Map customer requirements to test objectives, then design and write test cases for components and modules.
Run test cases and different types of tests with suitable tools to find errors and defects across the full component.
Track and analyse defects in components and modules, and run regression testing after every code change to confirm fixes.
Review defects from past projects to prevent similar ones from returning.
Find and resolve performance and availability bottlenecks in applications.
Carry out complex maintenance on applications independently, including corrective, adaptive and perfective maintenance and re-engineering.
Track and analyse the right metrics to assess application performance.
Analyse application logs, maintenance data and performance data, and report your findings.
Assess change requests to decide which are valid and feasible.
Keep the project on track against approved milestones and timelines.
Requirements
A Master's degree or equivalent in computer science, computer engineering, computer information systems, software engineering or a related field, plus 1 year of software engineering or related experience.
Or a Bachelor's degree or equivalent in one of the same fields, plus 3 years of software engineering or related experience.
Experience building high-performance frontend applications with React, Redux, Next.js, NX, React Query, GraphQL, HTML5, JavaScript, TypeScript, CSS3 and Tachyons.
Experience connecting user interfaces to scalable back-end services over REST and GraphQL.
Experience with React Testing Library, Jest, TestCafe and SauceLabs for improving site reliability.
Experience working out business, customer and technical requirements and analysing existing solutions to meet them.
Experience contributing to a project's discovery phase, shaping high-level designs with stakeholders.
Experience monitoring and debugging production applications with Splunk and Dynatrace to find root causes and fix bugs.
Experience using performance tuning and analytics tools such as Splunk and Dynatrace to find root causes.
Experience raising software quality through code quality, accessibility and usability best practices, while meeting security policy requirements.
Experience choosing languages, development standards and tools for coding and configuration.
Working knowledge of cloud technologies and designing solutions deployed on Azure, GCP and AWS.
Experience working in an Agile development lifecycle.
Experience running test cases to find errors and defects across a full component.
Experience tracking and analysing defects and running regression testing after code changes.
Experience building and maintaining CI/CD workflows and deployment systems with Jenkins and git.
Experience with SEO techniques and principles, and familiarity with modern debugging methods.
Experience with container technologies such as Docker and Kubernetes.
Experience working directly with product, business, automation and other stakeholders to deliver features end to end.
Experience designing and building GraphQL API clients with GraphQL, JavaScript, Node.js and Apollo Client.
Experience writing code that sends frontend analytics data to an analytics service to track user journeys and interactions for planning future engagement work.
Any amount of experience with the skills above is accepted.
Conditions
The role is based at 10900 NE 4th Street, Bellevue, WA 98004.
Base pay ranges from $143,104 to $216,000 per year.
Additional compensation includes annual or quarterly performance incentives.
Eligibility for some benefits depends on job classification and length of employment, and benefits may change or follow specific plan terms.
The company is an equal opportunity employer and keeps a drug-free workplace with zero tolerance for illegal drugs and alcohol on the job.
Benefits
Performance-based incentive awards.
Medical, vision and dental coverage.
401(k), stock purchase and company-paid life insurance.
PTO including sick leave, parental leave, family care leave, bereavement leave, jury duty and voting time.
Short-term and long-term disability cover.
Education assistance with 100% company-paid college degrees.
Company discounts, military service pay, adoption expense reimbursement and more.