Our Company
Changing the world through digital experiences is what Adobe’s all about. We give everyone—from emerging artists to global brands—everything they need to design and deliver exceptional digital experiences! We’re passionate about empowering people to create beautiful and powerful images, videos, and apps, and transform how companies interact with customers across every screen.
We’re on a mission to hire the very best and are committed to creating exceptional employee experiences where everyone is respected and has access to equal opportunity. We realize that new ideas can come from everywhere in the organization, and we know the next big idea could be yours!
The Opportunity
At Adobe, we are on a mission to revolutionize the way Adobe applications are built, deployed, and maintained. As a leader in creativity and innovation, we are seeking a skilled and passionate Sr. Software Engineer to join our team and take charge of developing and managing our proprietary build system. This role presents a unique opportunity to shape the future of build processes for Adobe-based applications and contribute to the success of our innovative products. As a Senior Software Engineer, you will play a crucial role in enhancing the development process, optimizing infrastructure, and ensuring the smooth and efficient delivery of Photoshop, Premiere Pro, After Effects, and more to millions of users worldwide.
Join our passionate team of experts and be at the forefront of developing and delivering Adobe Photoshop to millions of creative minds worldwide.
What You'll Do
Build System Development and Enhancement:
- Lead the design, development, and continuous improvement of our in-house build system, tailored specifically for Adobe-based applications.
- Collaborate with cross-functional teams to gather requirements, understand build pipeline needs, and develop efficient solutions that optimize build times and reduce development bottlenecks.
- Design and develop a scalable cross-platform configuration-driven workflow to build software projects with multiple nested dependencies.
- Propose build and deployment mechanisms for cloud-based services and external developer-facing APIs.
- Support compilation using various compilers on multiple platforms and architectures such as Windows, macOS, iOS, Linux, Android, WASM, arm, and x64
Team Collaboration and Knowledge Sharing:
- Collaborate with software development teams to provide guidance and support in optimizing software build
- Maintain documented standard processes for software build
- Foster a culture of collaboration and mentorship, assisting junior team members in building their expertise in build and DevOps practices.
Continuous Integration and Delivery:
- Implement and maintain robust CI/CD pipelines using the build system, automating the entire build, testing, and deployment process for Adobe applications.
- Ensure the reliability and scalability of the CI/CD infrastructure to meet the demands of a fast-paced development environment.
Infrastructure Management:
- Manage and maintain the cloud-based infrastructure and resources required for the build system and other DevOps-related services.
- Monitor system performance, troubleshoot issues, and proactively identify areas for improvement to guarantee smooth operations.
- Build System Maintenance:
- Oversee the day-to-day operation of the build system, ensuring its reliability and availability for the development teams.
- Perform system upgrades, patches, and fixes as necessary to maintain optimal performance and security.
What you need to succeed
- 10+ years as a software engineer.
- 5+ years of established practice in designing products for developers, e.g., SDKs, libraries, and open-source software.
- Deep understanding of C/C++ compilation model, including linking.
- Familiarity with modern C++ (11 onwards).
- High proficiency in Python and/or JavaScript including asynchronous programming.
- Ability to write comprehensive and clear documentation with attention to detail and polish.
- Excellent problem-solving skills and the ability to troubleshoot complex issues effectively.
- Effective communication and teamwork skills, with the ability to collaborate across teams and Passionate for improving tools and processes to improve the efficiency of others.
Great to have
- Experience building and maintaining highly complex build systems with cloud-based artifact repositories, monorepos, and external libraries surfaced through well-designed APIs.
- Experience with build systems (CMake, Buck, Bazel, Ninja, etc.).
- Experience with Visual Studio and Xcode projects.
- Contributions to large open-source projects. Experience writing software used by other developers in a self-serve model.
#CPP-All1
At Adobe, for sales roles starting salaries are expressed as total target compensation (TTC = base + commission), and short-term incentives are in the form of sales commission plans. Non-sales roles starting salaries are expressed as base salary and short-term incentives are in the form of the Annual Incentive Plan (AIP).
In addition, certain roles may be eligible for long-term incentives in the form of a new hire equity award.
Adobe is proud to be an Equal Employment Opportunity and affirmative action employer. We do not discriminate based on gender, race or color, ethnicity or national origin, age, disability, religion, sexual orientation, gender identity or expression, veteran status, or any other applicable characteristics protected by law. Learn more.
Adobe aims to make Adobe.com accessible to any and all users. If you have a disability or special need that requires accommodation to navigate our website or complete the application process, email accommodations@adobe.com or call (408) 536-3015.
Adobe values a free and open marketplace for all employees and has policies in place to ensure that we do not enter into illegal agreements with other companies to not recruit or hire each other’s employees.