Adobe is seeking an engineer to build and maintain backend services for Adobe Stock, a platform that provides designers and businesses with royalty-free assets integrated into Adobe's creative applications.
Requirements
- 5+ years of proven experience in developing highly scalable backend services to drive impactful solutions
- Proficiency in JavaScript and comfortable with ES6, & Express
- Experience building microservices in Node.js, Typescript, and/or PHP to create modular and maintainable systems.
- Implement sophisticated JavaScript techniques such as modules, async/await, compiling and bundling, and server rendering to enhance performance and maintainability.
- Experience in building and maintaining services using GraphQL, with a strong understanding of GraphQL federation to ensure seamless data integration.
- Experience maintaining highly available, fault-tolerant, and distributed services, including familiarity with technologies and architectures like microservices, managed services, AWS, Docker, Kubernetes, New Relic, and Splunk
- Apply computer science principles to real-world problems, applying knowledge of algorithms, data structures, distributed systems, and data flow and storage
Responsibilities
- crafting innovative new features and maintaining existing ones for Adobe Stock
- building and supporting highly scalable libraries and middleware for the Adobe Stock ecosystem
- debug issues across multiple systems
- contribute to architectural design discussions
- building highly scalable backend services
- building microservices
- building and maintaining services using GraphQL
Other
- B.S. in Computer Science or a related field to apply fundamental principles to complex problems.
- Navigate ambiguous problems and discuss tradeoffs in system design to make informed decisions.
- Strong familiarity with both functional and object-oriented programming to write clean and efficient code.
- Adopt development practices that prioritize robust and reliable software, including writing your own unit tests and integration tests.
- Thrive in an Agile development environment, contributing to iterative and incremental improvements.