This role covers the software lifecycle for a large retail platform, from requirements and design through build, testing and upkeep of components and applications.
The job is based at 1375 Crossman Avenue, Sunnyvale, CA 94089.
Responsibilities
Look through the existing set of software products and solutions to find ones that meet business or technical needs.
Find gaps between what customers and the business expect and what current products and solutions deliver, then sort requirements by type.
Spot likely risks and problems while gathering requirements, tell the right stakeholders, and propose fixes.
Help write user stories for software components and applications.
Track and examine defects in your component or module, and run regression tests so each fix holds across every code change.
Review defects from earlier software engineering work to prevent similar ones.
Find and fix performance and availability bottlenecks in applications.
Carry out complex maintenance work on applications on your own.
Track suitable metrics to monitor and assess application performance.
Do corrective, adaptive and perfective maintenance engineering.
Analyze application logs, maintenance records and performance data, and report your findings.
Decide which change requests are valid and feasible.
Help design solutions so that processes and applications work together for specific product components or modules.
Weigh design trade-offs against business requirements.
Help turn high-level designs into detailed designs with mock screens, pseudocode and functional logic for specific modules or components.
Choose suitable frameworks, platforms and environments for coding, configuration and scripting.
Help add telemetry by working out which data and metrics are needed in the domain.
Take part in ad-hoc code reviews to confirm basic protections against known risks.
Build and configure lean code for the whole product or system, making sure it meets business and non-functional needs, including maintainability, availability and scalability.
Order software engineering requirements into a programming sequence based on analysis.
Lead the creation of scripts that automate repetitive and routine work in CI/CD, testing and other processes across the domain.
Turn customer requirements into a test strategy.
Select, introduce and put in place testing tools.
Decide the scope and method of testing for each requirement.
Make sure test cases cover every test scenario for product and solution requirements.
Help run test cases to check code and find errors and defects across the whole product.
Requirements
A bachelor's degree or equivalent in computer science, computer engineering, computer information systems, software engineering, information technology or a related area, plus 4 years of software engineering or related experience.
Or a master's degree or equivalent in one of those same areas, plus 2 years of software engineering or related experience.
Object-oriented coding experience building large-scale, back-end retail applications.
Experience designing and building scalable, fault-tolerant microservices and REST APIs in Java.
Experience tuning, cleaning up and troubleshooting databases, and running database management and analytics on Azure SQL and BigQuery.
Experience building fast, optimized business flows and data pipelines with data structures and algorithms.
Experience monitoring health, analyzing trends and detecting anomalies with Splunk and Grafana.
Experience designing and building a multi-tenant reverse logistics platform with MVC architecture, Apache Camel and Apache Spring.
Experience deploying production systems, keeping services available, and doing DevOps on Azure Cloud and on-premises cloud.
Experience designing asynchronous, distributed, high-performance services for a supply chain ecosystem using Apache Kafka, JMS and IBM MQ.
Experience debugging and leading root cause analysis with Dynatrace, SQL and BigQuery.
Experience supporting customer-facing eCommerce systems by correcting data, reprocessing failed events and keeping service running during outages, using shell scripting and Apache Spark.
Experience scaling large systems in distributed environments with OneOps, Docker and Kubernetes.
Any amount of experience with the skills above is acceptable.
Conditions
Base salary ranges from $185,587 to $286,000 per year.
Equal opportunity employer.
The company maintains a drug-free workplace with zero tolerance for illegal drugs and alcohol on the job, applying to all employees.
Benefits
Performance-based incentive awards, paid annually or quarterly.
Medical, vision and dental coverage.
401(k), stock purchase plan 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.
Eligibility for some benefits depends on job classification and length of employment, and benefits may change or follow specific plan terms.