Ankit Srivastava
Ankit Srivastava
Senior Software Engineer

Siri Developer Productivity Journey

Description

Follow the transformations of the Siri build beginning from the migration from Maven to Gradle and how we have used the ecosystem offered by Gradle and Github to enhance the user experience of developers, increase the velocity of the feedback loop to developers and overall smooth out the experience from a Siri developer standpoint.

  • Migration of the build from Maven to Gradle
  • Declaring and tracking build inputs
  • Why too many inputs is bad
  • Why too few inputs is bad
  • Output stability & caching
  • Troubleshooting local configuration – Gradle build scans
  • Custom values in build scans
  • Mono repo vs mono build – breaking down the build in component to avoid rebuilding slow changing components
  • User experience focus – feedback to developers on the progress of their PR
  • Github App/Checks
  • Code owners for mono repos
  • Codeowners vs custom one

About Ankit

Ankit is a software engineer based in San Francisco working at Apple. He has background in solving challenging problems around development environment frameworks, CI/CD, scalability and software build systems so that engineers are enabled to deliver products at high velocity and scale without compromising quality. Ankit has great passion for watching the Buckeyes play football, hiking, photography & a good :beer:.