The document discusses continuous integration and incremental development. It defines continuous integration as a pipeline with jobs that can run in parallel and produce artifacts that other jobs depend on. Incremental development involves implementing features in a way that maintains the integrity of the existing system and enables easy deployment. It is driven by requirements and tests, uses source control management, and aims for the system to be releasable at any time. Continuous integration helps achieve many of the goals of incremental development through automated testing, monitoring, and deployment pipelines.
Putting Devs On-Call: How to Empower Your TeamVictorOps
A main tenet of DevOps is bridging the gap between the Dev team and the Ops team. One way to accomplish this is to include devs in the on-call rotation. While this may sound difficult, it’s not impossible to do…as our guide demonstrates.
We profile four companies that have successfully transitioned their dev team to being on-call and their stories can provide examples for how you too can do it.
DevOps is mainstream - at least the tools, the automation and the metrics. But what happened to DevOps Culture? Does it still matter? If yes - how do we achieve it?
Putting Devs On-Call: How to Empower Your TeamVictorOps
A main tenet of DevOps is bridging the gap between the Dev team and the Ops team. One way to accomplish this is to include devs in the on-call rotation. While this may sound difficult, it’s not impossible to do…as our guide demonstrates.
We profile four companies that have successfully transitioned their dev team to being on-call and their stories can provide examples for how you too can do it.
DevOps is mainstream - at least the tools, the automation and the metrics. But what happened to DevOps Culture? Does it still matter? If yes - how do we achieve it?
DOES SFO 2016 - Sam Guckenheimer & Ed Blankenship "Moving to One Engineering ...Gene Kim
Microsoft has been on a transformation both culturally as well as technically by consolidating engineering systems to One Engineering System. Along the way, we've had many learnings that we'll share from soup to nuts: adopting Git at scale, realigning our talent competencies, reorganizing, becoming data driven, and delivering continuously through lots of automation & cloud adoption.
This presentation explores the reasons why software projects are significantly more difficult to manage than other types of projects. Software-specific issues related to scope, resources, and time are explored, as well as how software projects differ from other projects in the physical world. An argument for why software constitutes a “Wicked Problem” is expanded, and numerous software development myths are attacked with real-world anecdotes and solutions.
Use of three simple measurements in to aid with improving software delivering. Includes real world data and a case study from three geographicaly distributed teams.
An updated version of Simple Measurements as delivered at the CT-SPIN group in 2012.
What is Technical Debt? It doesn't have to be negative, but it does have to be carefully managed. Here is a quick run-down of best practice to approaching Technical Debt management.
Jason Taylor, former IT Shared Delivery Director for Specsavers gives an insight to the future of the test professional in today’s lifecycle containing more Agile delivery and the concept of DevOps and how the challenges for today’s testers became the catalyst for change.
Developer Productivity Engineering with GradleAll Things Open
Presented by: Justin Reock & Sterling Greene
Presented at the All Things Open 2021
Raleigh, NC, USA
Raleigh Convention Center
Abstract: In 2007, Hans Dockter invented the Gradle Build Tool because he felt that developers deserved less friction in their toolchain. The prevailing build technologies of the time were adequate but inefficient, not taking advantage of possible acceleration technologies and, with some exceptions, very limited in their language and framework support. Gradle is now one of the most widely used build tools available, downloaded about 25 million times a month as of September of 2021. It’s the default build tool in Android Studio, and is trusted by millions of developers to create their artifacts quickly and cleanly.
The principles that originally guided the Gradle build tool towards its current popularity have continued into an emerging practice known as Developer Productivity Engineering or DPE. DPE is a new software development practice that uses acceleration technologies to speed up the software build and test process and data analytics to optimize the impact of acceleration technologies and make troubleshooting more efficient. Leading technology companies are using this practice today to accelerate feedback cycles by over 90% in some cases, improving the developer experience and increasing team velocity.
Join Sterling Greene, Lead Software Engineer for the Gradle Build Tool, and Justin Reock, Field CTO of Gradle Enterprise, to learn why DPE is swiftly becoming the most important movement in software development since the introduction of DevOps.
Attendees will walk away from this presentation with a better understanding of:
● The importance of fast feedback cycles and how to achieve them using build and test acceleration technologies
● Using build and test data to make troubleshooting and problem root cause determination more efficient.
● The importance of leveraging failure analytics to improve toolchain reliability, including managing avoidable failures like flaky tests.
● How to continuously improve performance and guard against regressions through trend and metric observability.
● The Cost of Inaction (CoI) by not investing in developer productivity across your local build environments and CI/CD pipelines in terms of engineering cost, TTM and software quality.
● How to elevate the strategic priority of DPE in your organization.
Investing in a good software factory and automating the build processNicolas Mas
Talk from a Singapore Spring user group. Investing in a software factory, automating it as much as possible. Can we also automate the creation of the software factory?
DOES SFO 2016 - Sam Guckenheimer & Ed Blankenship "Moving to One Engineering ...Gene Kim
Microsoft has been on a transformation both culturally as well as technically by consolidating engineering systems to One Engineering System. Along the way, we've had many learnings that we'll share from soup to nuts: adopting Git at scale, realigning our talent competencies, reorganizing, becoming data driven, and delivering continuously through lots of automation & cloud adoption.
This presentation explores the reasons why software projects are significantly more difficult to manage than other types of projects. Software-specific issues related to scope, resources, and time are explored, as well as how software projects differ from other projects in the physical world. An argument for why software constitutes a “Wicked Problem” is expanded, and numerous software development myths are attacked with real-world anecdotes and solutions.
Use of three simple measurements in to aid with improving software delivering. Includes real world data and a case study from three geographicaly distributed teams.
An updated version of Simple Measurements as delivered at the CT-SPIN group in 2012.
What is Technical Debt? It doesn't have to be negative, but it does have to be carefully managed. Here is a quick run-down of best practice to approaching Technical Debt management.
Jason Taylor, former IT Shared Delivery Director for Specsavers gives an insight to the future of the test professional in today’s lifecycle containing more Agile delivery and the concept of DevOps and how the challenges for today’s testers became the catalyst for change.
Developer Productivity Engineering with GradleAll Things Open
Presented by: Justin Reock & Sterling Greene
Presented at the All Things Open 2021
Raleigh, NC, USA
Raleigh Convention Center
Abstract: In 2007, Hans Dockter invented the Gradle Build Tool because he felt that developers deserved less friction in their toolchain. The prevailing build technologies of the time were adequate but inefficient, not taking advantage of possible acceleration technologies and, with some exceptions, very limited in their language and framework support. Gradle is now one of the most widely used build tools available, downloaded about 25 million times a month as of September of 2021. It’s the default build tool in Android Studio, and is trusted by millions of developers to create their artifacts quickly and cleanly.
The principles that originally guided the Gradle build tool towards its current popularity have continued into an emerging practice known as Developer Productivity Engineering or DPE. DPE is a new software development practice that uses acceleration technologies to speed up the software build and test process and data analytics to optimize the impact of acceleration technologies and make troubleshooting more efficient. Leading technology companies are using this practice today to accelerate feedback cycles by over 90% in some cases, improving the developer experience and increasing team velocity.
Join Sterling Greene, Lead Software Engineer for the Gradle Build Tool, and Justin Reock, Field CTO of Gradle Enterprise, to learn why DPE is swiftly becoming the most important movement in software development since the introduction of DevOps.
Attendees will walk away from this presentation with a better understanding of:
● The importance of fast feedback cycles and how to achieve them using build and test acceleration technologies
● Using build and test data to make troubleshooting and problem root cause determination more efficient.
● The importance of leveraging failure analytics to improve toolchain reliability, including managing avoidable failures like flaky tests.
● How to continuously improve performance and guard against regressions through trend and metric observability.
● The Cost of Inaction (CoI) by not investing in developer productivity across your local build environments and CI/CD pipelines in terms of engineering cost, TTM and software quality.
● How to elevate the strategic priority of DPE in your organization.
Investing in a good software factory and automating the build processNicolas Mas
Talk from a Singapore Spring user group. Investing in a software factory, automating it as much as possible. Can we also automate the creation of the software factory?
My presentation (Introduction to DevOps) presented to AlQemam company during our technical sessions.
Session main points:
♦ What is DevOps, its history and timeline.
♦ DevOps VS Traditional Silos.
♦ DevOps Culture: The culture of collaboration between Dev and Ops.
♦ DevOps Practices: The practices which support the goals of
DevOps culture.
♦ DevOps Tools: The tools that help implement DevOps practices (Examples of tools used for each DevOps Practice).
♦ DevOps and the Cloud: The close relationship between DevOps and the cloud
Laptop Devops: Putting Modern Infrastructure Automation to Work For Local Dev...Thoughtworks
A talk around various development environment automations us and other ThoughtWorkers have seen and built on many different projects, and learnings around best practices. We've seen serious work put into this drastically increase the productivity of developers, and solve a lot of the problems that microservices can otherwise cause.
Inextricably linked reproducibility and productivity in data science and ai ...source{d}
In this talk Mark Coleman presents his team's research comparing the evolution of Software Development & DevOps with that of Data Science & AI.
Because it is more complex and has far more moving parts, Data Science & AI is where Software Development was in 1999: people are emailing and Slacking notebooks to each other, due to a lack of appropriate tooling. There are few CI/CD pipelines and model health monitoring is scarce. A lot that could be automated is still manual. And teams are siloed. This causes problems both for productivity: it's hard to collaborate, and reproducibility: which impacts on governance and compliance.
stackconf 2023 | Better Living by Changing Less – IncrativeOps by Michael Cot...NETWAYS
DevOps has always been about dramatic changes to improve IT. You don’t only need to use a different set of tools, you need to change your entire IT culture! It’s all exhausting, really. Worse, this imperative to change never goes away. Will we ever actually be done and “be like Google”? Instead of carrying the flag of “change or die,” this talk proposes an alternate, more practical, sustainable, and comforting approach to improving: IncrativeOps.
ארגונים ברחבי העולם מגבירים את השימוש בתהליכי DevOps לטובת שיפור היתרון התחרותי שלהם, הורדת סיכונים והפחתת עלויות פיתוח. כיום ניתן ליישם את ההצלחה של ה-DevOps בעולם מסדי הנתונים, על ידי ביצוע אוטומציה של תהליכי הפיתוח והעברה בין סביבות, אכיפת מנגנוני אבטחה, והפחתת הסיכונים הכרוכים בתהליך.
A modern architecturereview–usingcodereviewtools-ver-3.5SSW
For any project that is critical to the business, it’s important to do ‘Modern Architecture Reviews’. Being an architect is fun, you get to design the system, do ongoing code reviews, and play the bad ass. It is even more fun when using modern cool tools.
Measure and Accelerate Your Software DeliveryAnand Chauhan
Many companies adopt the DevOps practices, but struggle to realize the impact the DevOps investment is making to improve software delivery. Disconnected teams, tools and increasing complexity leads to no visibility into how and where to optimize the process, deliver value to customers and maximize return on that investment. The session covers industry trends, critical need for measurement and touches on CloudBees DevOptics solution purpose built to provide immediate transparency you need to measure, optimize and improve your software delivery process.
2. There are lot of areas where we can use CI/CD pipelines.
3. There are lot of areas where we can use CI/CD pipelines. • Since CI/CD instruments are very general. • We can even use CI as a general purpose job server. • As to materialize views. Real example from ironSource.
4. I’ll focus on integration of changes during incremental development.
5. So, what is incremental development is all about?
6. There is bunch of questions. I will split them into a five
26. There are programs for this • Static code checking. • Code style checking • Code complexity • Types • Previous sate of the system described by tests
27. What is incremental development is all about? • The TDD question. • Integrity. • Deployment.
54. It’s a pipeline with triggers: • Some jobs are sequential an some can be run in parallel • Jobs produce artifacts and they depends on artifacts produced by other jobs • Jobs produce artifacts and they depends on artifacts produced by other jobs • The wrapping pipeline called «plan»
56. In Bamboo jobs grouped into stages • If jobs doesn’t depends on each other they can run in parallel • It depends on number of free capable agents • Jobs itself are synchronized sequences of tasks performed on a context. E.g build dir
59. (No header) • Branches are parametrized versions of the main build plan • They are bounded to VCS branches • Bamboo takes care of automatically creation and collecting branches • Or you can make eternal branches. Like master.
61. Continuous Integration Workflow • Gitflow • When development is done we make a pull request • Bamboo checkouts branche’s HEAD and merges `dev` branch into it
63. Continuous Integration Workflow • Gitflow • When development is done we make a pull request • Bamboo checkouts branche’s HEAD and merges `dev` branch into it • It extracts deploy script as an artifact • It loads dependencies
66. Continuous Integration Workflow • ... • Push merge result into feature branch if build is successful • Notify VCS about build status • Task is moved to code review
74. Continuous Integration Workflow • ... • If there is enough approves and build is successful then assignee moves task into QA • The build is deployed to QA • We can run e2e at this time
97. CI/CD risks • You will rely on your CI infrastructure • Any problems with CI is a blocker
98. But this is much better to catch bugs on production
99. Or find that you almost impossible to do clean release
100. CI/CD risks • You will rely on your CI infrastructure • Any problems with CI is a blocker • There no efficient way to explicitly force people to write tests. They should accept this first • If CI is too slow it become useless
101. Beyond this keynote • Performance • TDD and functional programming • Metrics • Mutation testing