blackfire.io @blackfireio #blackfireio 4 SaaS-delivered Solution Great user experience No need to change your code Profile comparisons Works in dev & prod (no overhead) Works for the Web and the CLI Freemium for individual developers Automation
blackfire.io @blackfireio #blackfireio In a year, we rolled out 220 prod releases of the website 240 releases for the Companion 260 releases for the Probe 350 releases for the Agent in a fully automated way Numbers 6
blackfire.io @blackfireio #blackfireio No need to worry about them in urgency, Gives us more capacity to deal with other challenges, We knew we would face more challenges, Handle Symfony challenges before issues arise 9
blackfire.io @blackfireio #blackfireio Move heavy workload to background workers Move assets building to a Jenkins job publishing on S3 Amazon RDS / ElastiCache Reusing recipes working on other projects 10
blackfire.io @blackfireio #blackfireio Deployment automated very early Monitoring, measuring and graphing everything, Pushing all the logs into EHK Sending all errors to Sentry (and JS too!) Reusing recipes working on other projects 11
blackfire.io @blackfireio #blackfireio Not hesitating to change the model : 136 migrations so far; No table in common with first day model; User class is probably the only one who has not been changed since the public announcement. Not afraid to denormalize model for reads Allowed us to easily move to ES for reads, Allowed us to remove the complex models burden of frontend. Reusing recipes working on other projects 12
blackfire.io @blackfireio #blackfireio PHP JavaScript Golang C And a lot of glue in several languages (Bash, Ruby, …) Languages used by Blackfire stack 15
blackfire.io @blackfireio #blackfireio Compiling Packaging binaries and scripts Pushing package somewhere Updating release channels (Webstore, repositories, you own doc, …) Releasing 19 For every platform
blackfire.io @blackfireio #blackfireio We believe short time to feedback is essential to make a tool actually useful to developers. At first, only a single do-everything Jenkins build for PR To decrease time to feedback we split it Which also allows to have the tests running for the whole stack whilst it would have previously stop at first fail. Reducing time to feedback 36
blackfire.io @blackfireio #blackfireio We believe short time to feedback is essential to make a tool actually useful to developers. At first, only a single do-everything Jenkins build for PR To decrease time to feedback we split it Which also allows to have the tests running for the whole stack whilst it would have previously stop at first fail. Reducing time to feedback 36
blackfire.io @blackfireio #blackfireio In a year, we rolled out 220 prod releases of the website 240 releases for the Companion 260 releases for the Probe 350 releases for the Agent in a fully automated way Numbers 37
blackfire.io @blackfireio #blackfireio Continuous Improvement Nothing can be done at once Constantly improve and refine Accept new challenges http://www.freewallpaperfullhd.com/space-shuttle-launch-wallpaper-full-hd-2560x1600/ 38