Are you interested in the chance to work on professional creative software product that touches millions of customers across the world?
If so, the Photoshop team is looking for a passionate senior C++ developer to join us in shaping the future of Photoshop.
You will be working within a fast-paced, agile environment, partnering closely with fellow developers, quality engineers, designers, and product managers.
Your role as a developer will play a key part in helping modernize this world-class product and delivering an incredible user experience.
We are looking for someone who holds high standards and is technical, driven, and creative, and who with their clear communication skills, adaptability and collaborative approach can work effectively across the team to bring Photoshop to life on multiple platforms.
What you'll Do
Help architect and build tooling to accelerate C++ application development across multiple platforms
Partner closely with peer developers identify and resolve bottlenecks to developer productivity
Work closely with core technology and other product teams to promote robust dependency management at scale
Collaborate with Infrastructure teams to integrate tooling into CI / CD pipelines
Shape architectural and functional design details when tasks or specifications are open-ended
Collaborate with teammates across all functional disciplines to ensure quality in all phases of development
Write beautiful, self-documenting code that others can easily read and adapt
Write and review engineering documents and review design specs
Participate in regular code reviews
You are someone who...
Loves software and marrying art with science to enable creative people to fully express themselves more efficiently and effectively
Is a team-player and is looking to contribute to something greater than yourself
Is a motivated, self-starter, who can make progress quickly even when there is ambiguity
Is a critical thinker, who possesses strong analytical skills tempered with empathy and emotional intelligence
Is able to organize and prioritize your work in order to make the best use of your time and capabilities
Cares deeply about customers, quality, craftsmanship, and polish
Is a phenomenal listener and communicator, able to digest, synthesize, and distill complex information and communicate clearly
In the face of adversity is are able to adapt and persevere, all while maintaining a healthy, balanced long-term perspective
Is a quick learner and is always looking to improve yourself, and see challenges and setbacks as opportunities to learn
Loves solving problems and coming up with solutions that are both elegant and robust
What you need to succeed
A bachelor's degree (or masters) in Computer Science or equivalent
7+ years of experience developing C++ applications and / or tooling
A very strong background in modern C++ and programming fundamentals
Expertise in writing robust and reliable code
Experience with Python
Strong understanding of Photoshop and working with large products and codebases
Experience with Clang-Tools (e.g. Clang-Tidy) is a plus
Experience with CI / CD tooling (e.g. Jenkins) is a plus