Adobe - San Jose, CA

posted about 1 month ago

Full-time - Mid Level
San Jose, CA
Publishing Industries

About the position

The Senior Software Engineer for the Acrobat AI Assistant at Adobe is responsible for enhancing the platform that manages billions of PDFs and millions of transactions monthly. This role focuses on developing scalable and efficient code solutions, ensuring robust backend services, and facilitating fast feature development for AI-driven functionalities. The engineer will work closely with feature teams to improve communication and knowledge sharing, while also providing operational support for globally deployed systems.

Responsibilities

  • Design, build, and maintain scalable and efficient code solutions for the Acrobat AI Assistant.
  • Develop and review specifications for safe client-service contracts, ensuring clear, concise, and secure interactions.
  • Apply standard methodologies in code layering and modular design to ensure the development of robust and easily maintainable codebases.
  • Conduct detailed reviews of pull requests and debug complex service integration issues.
  • Lead the coordination and execution of service releases, ensuring they meet rigorous production standards.
  • Work closely with feature teams to facilitate effective communication and knowledge sharing.
  • Accelerate engineering productivity by empowering fellow engineers with excellent tooling and systems.
  • Build and provide operational support for globally deployed systems.

Requirements

  • B.S., M.Sc., or Ph.D. in Computer Science or equivalent practical experience with 5+ years of experience.
  • Extensive software development experience, specifically in backend infrastructure, emphasizing code organization and architectural standard methodologies.
  • Proficiency in designing and implementing concurrent and asynchronous systems using languages such as Python, JavaScript (Node.js), or Go.
  • Familiarity with integrating language models within a feature pipeline.
  • Strong understanding of event-driven architectures and non-blocking I/O operations.
  • Understanding of OOP principles such as encapsulation, inheritance, polymorphism, and abstraction.
  • Familiarity with common design patterns (e.g., Singleton, Factory, Observer, Strategy).
  • Proficiency in writing unit and integration tests for object-oriented systems. Strong debugging skills.
  • Proficiency in Python, with the ability to write clean, unit-tested, and well-documented code using docstrings.
  • Familiarity with frameworks such as LangChain and Pydantic is highly desirable.
  • Familiarity with prompt engineering, vector search techniques, and similar AI/ML technologies.
  • Experience or willingness to learn how to create and review specifications for client-service contracts.
  • Strong interpersonal skills with the ability to lead, mentor, and work collaboratively in a fast-paced environment.
  • A proactive approach to identifying and resolving technical challenges independently.
  • Flexibility in high-pressure settings.

Nice-to-haves

  • Experience in developing and deploying machine learning models in production environments.
  • Expertise in continuous integration/continuous deployment pipelines, particularly in cloud environments.
  • Experience with building and maintaining large-scale data processing systems, with a strong understanding of technologies like Kafka and Spark.
  • Familiarity with networking protocols and monitoring systems, as well as experience in developing and maintaining RESTful APIs.

Benefits

  • Competitive salary based on experience and location.
  • Potential for long-term incentives in the form of a new hire equity award.
  • Annual Incentive Plan (AIP) for non-sales roles.
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service