The team builds and maintains software components and applications. This senior role covers the work from requirements gathering through design, coding, testing and upkeep.
You will work on both new solutions and existing products, and you will handle complex maintenance on your own.
Responsibilities
Compare customer and business expectations with the current product to find gaps and needed changes, scoped to each iteration when working in agile.
Sort requirements into their applicable categories.
Spot likely solution risks during requirements gathering, alert the right stakeholders, and propose corrective steps.
Help write user stories for components, applications and complex features in agile work.
Help design solutions so that processes and applications work together across product modules.
Weigh trade-offs in component design against business needs.
Help turn high-level designs into detailed designs with mockups, pseudocode and functional logic for specific modules.
Write and configure lean code for whole components or applications, checking that they meet business, technical and non-functional needs, including maintainability, high availability and scalability.
Help choose languages, development standards and tools.
Proactively learn the core concepts of languages and frameworks that will be useful later.
Write scripts to automate repetitive, routine work in CI/CD, testing and other processes where suitable.
Build telemetry features independently when needed.
Make sure security policy requirements are applied during coding and configuration.
Translate customer requirements into test objectives.
Identify and write test cases for components and modules.
Run tests to find errors and defects across the full component.
Run different types of tests using suitable tools.
Track and analyze defects, and run regression testing after every code change.
Review defects from past projects to prevent similar ones from recurring.
Diagnose performance and availability bottlenecks in applications.
Carry out complex application maintenance independently.
Monitor application performance through relevant metrics.
Perform corrective, adaptive and perfective maintenance, along with re-engineering.
Analyze logs, maintenance records 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
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 those fields, plus 3 years of software engineering or related experience.
Experience designing and building REST APIs with Java and Spring Boot.
Experience designing scalable relational database schemas and data models.
Experience building and maintaining NoSQL data using sharding and partition keys.
Experience designing and building CI/CD pipelines with validation hooks for code coverage, builds, linting, dependency and vulnerability checks, and unit and regression tests.
Experience writing robust, maintainable backend Java code using object-oriented principles.
Experience producing high-level and low-level designs for backend processes.
Experience building backend microservices with J2EE, Hibernate, JPA, JDBC and Spring configuration.
Experience applying Singleton, Factory, Strategy and Adapter design patterns.
Experience building dashboards, alerts and metrics for production systems.
Experience working in Agile software development.
Any amount of experience with these skills is accepted.
Conditions
The role is based at 1375 Crossman Avenue, Sunnyvale, CA 94089.
Pay ranges from $117,000 to $234,000 per year.
Eligibility for some benefits depends on your job classification and length of employment, and benefits may change or follow specific plan terms. Eligibility details are available on the company's benefits site.
The company is an equal opportunity employer and has a zero-tolerance policy for illegal drugs and alcohol at work.
Benefits
Performance-based incentive awards, paid annually or quarterly.
Medical, vision and dental coverage.
401(k), stock purchase and company-paid life insurance.
PTO including sick leave, parental leave, family care leave, bereavement, jury duty and voting time.
Short-term and long-term disability cover.
Education assistance that covers 100% of college degrees, paid by the company.
Company discounts, military service pay, adoption expense reimbursement, and more.