We are unable to provide visa sponsorship or transfers, for this role at this time. No candidates requiring visa sponsorship or transfer will be considered.
This position is based in Tempe, AZ and will require the selected candidate to relocate themselves to the Tempe area, if currently not local.
The position involves managing 2 to 3 Lead Software Engineers and a Lead QA-QE, with extensive hands-on architecture, code reviews and production support work. It also manages off-site vendors.
At Shutterfly, we're all about people - bringing them together, making them feel welcome, and connecting them to experiences. We make our customers' memories last a lifetime by capturing, preserving, and sharing them through photography and personalized products. Through our family of brands, trend setting products, cutting edge technology, and best in class customer service, we help our customers, and each other, share life's joy.
Shutterfly Business Solutions (SBS) enables other large companies to connect with their customers using web-to-print software solutions. SBS Technology is responsible for delivering cutting edge software solutions developed on Innovation Core frontend platform and manufacturing PaaS services.
We are looking for a Senior Manager, Software Engineering who can partner with Product and Customer Service teams to develop software solutions and own end-to-end technical delivery from requirements to architecture and development to deployment.
The ideal candidate will have 10+ years strong hands-on software engineer experience building complex applications using Java technology stack, and at least 5+ years leading and building a team of engineers.
End-to-end ownership (Cradle to Grave: Architecture, Development, QA, Infrastructure, Release, Support) for the assigned SBS line of business applications
Partner with Product and Customer Service teams to define clear functional requirements (epics/features/user stories)
Work with Lead Software Engineers to map functional requirements into technical design tasks and delivery plans. Ensure development teams deliver on committed plans
Engage technical teams on architecture and technology best practices (microservices, component reuse, distributed and cloud app design patterns)
Work with external vendors to build technical capabilities
Implement quality processes - code reviews, test automation and quality metrics
Streamline and implement release automation (CI/CD processes), containerization and cloud/AWS migration
Manage production support requests and support processes
Recruit, retain and develop engineering talent
5+ years' experience leading and managing Software Development Teams
10+ years hands-on software development experience using Java technology, including strong architecture experience (microservices, PaaS, distributed scale Apps)
Exceptional technical project management skills (white board design with teams, define work tasks/estimates and create schedules) with ability to manage multiple product lines and projects with competing priorities
Experience managing production support, quality processes and release automation
Excellent communication, analytical and leadership skills
Must have a positive, Can Do! Attitude
Experience implementing Agile Scrum Process
Open Source Java, Spring Framework, Spring Boot
Scale Technologies: Redis, Elastic Search, Kafka, NoSQL
DevOps (CI/CD, Containerization, Cloud/AWS migration)
BS/MS in Computer Science
Strong customer focus and owner mindset
Proven track record of delivering Software Products