SlideShare a Scribd company logo
Keep Your Head in the Clouds 
Blackboard’s Transition from Enterprise to Cloud 
Software Through DevOps 
David Ashman 
Chief Architect, Cloud Architecture 
@davidbashman
DOES14 - David Ashman - Blackboard Learn - Keep Your Head in the Clouds
DOES14 - David Ashman - Blackboard Learn - Keep Your Head in the Clouds
DOES14 - David Ashman - Blackboard Learn - Keep Your Head in the Clouds
DOES14 - David Ashman - Blackboard Learn - Keep Your Head in the Clouds
DOES14 - David Ashman - Blackboard Learn - Keep Your Head in the Clouds
● The industry leader in educational 
technology and services 
● 17 years young 
● Privately held 
● $450M revenue at time of going private 
● Headquarters in Washington, DC
DOES14 - David Ashman - Blackboard Learn - Keep Your Head in the Clouds
Blackboard Learn 
● 17 year old codebase with roots in Perl 
● Millions of lines of Java code (Hybrid Java/Perl for many 
years) 
● 7 development/operations offices, worldwide 
● 700 people between development, testing and 
operations (All products) 
● ~3000 virtual machines across 1000 clients in hosting 
● ~8PB of content and data storage
We are a horse.
And like so many of you... 
● 6+ month lead times 
● Technical debt 
● High update failure rates 
● Poor communication paths from development to 
operations 
● Poor feedback loops from operations to development
But through the art of DevOps...
We are a horse.
We are a horse. 
^
What changed? 
● Automation 
● Cloud Infrastructure 
● Culture
Automation
# of code commits
DOES14 - David Ashman - Blackboard Learn - Keep Your Head in the Clouds
DOES14 - David Ashman - Blackboard Learn - Keep Your Head in the Clouds
24-36 Hours
Mike McGarr
DOES14 - David Ashman - Blackboard Learn - Keep Your Head in the Clouds
# of code commits
# of code commits
# of code commits
DOES14 - David Ashman - Blackboard Learn - Keep Your Head in the Clouds
152-43-03 6M Hinouutress
DOES14 - David Ashman - Blackboard Learn - Keep Your Head in the Clouds
But wait... There’s more! 
Functional Acceptance Testing
Value 
5 minutes 
Create 
Ticket 
4 hours 15 minutes 
1 hour 1 hour 
Commit/ 
Build/ 
Integrate 
5 
minutes 
Problem! 
Code Test Suite 
Analyze 
Failed 
Tests 
5 
minutes 
36 
hours 
24 
hours 
6 hours (value) 
70 hours total time 
= 9% Efficient 
Waste (wait) 
15 minutes 
Assign 
Ticket 
6 
hours
Development 
Testing 
(2-5 days) 
Commit 
Ticket 
Project 
Management 
3-6+ days
100s of Failures 
60% script issues 
(invalid tests, out of sync with functionality) 
30% data/environment issues 
(data left in the database or filesystem) 
7% pre-existing issues 
3% newly discovered issues
Problem
The Problem 
● Elongated testing cycles (3+ months) 
● Longer time to market 
● Reduced visibility to our development team 
● Long delays between coding and fixing 
● Too much noise distracting us from product 
improvements
Test Automation 
● TDD 
● Fully automated acceptance testing pipeline 
● < 30m acceptance test feedback 
● New testing approaches (Jasmine, Protractor, 
RESTAssured) 
6+ month lead time 
1-2 week lead time
Cloud Infrastructure
Product Development Operations 
!= != 
Development Test Production
DOES14 - David Ashman - Blackboard Learn - Keep Your Head in the Clouds
Deployment Environments 
● Snowflakes - No two environments were alike 
● Completely different deployment methods 
o Manual development builds 
o Automated installs in testing 
o Gold master images in production 
● Completely different deployment architectures 
o Windows development machines 
o Linux VMs in testing 
o Linux clusters in production
Development Operations
DOES14 - David Ashman - Blackboard Learn - Keep Your Head in the Clouds
DOES14 - David Ashman - Blackboard Learn - Keep Your Head in the Clouds
DOES14 - David Ashman - Blackboard Learn - Keep Your Head in the Clouds
Learn in the Cloud 
● Everything, from the ground up, is automated. 
● Orchestration in code - stored in SCC, executed in ALL 
deployment environments. 
● On demand provisioning for developers. 
o Still develop on their laptops, but can now test in a real 
deployment environment.
BbCloud 
● OpenStack in our data centers 
● Abstract cloud fabric to gain benefits in both clouds 
● Centralized, standardized Chef automation 
● Increased visibility for development 
o Monitoring, APM, statsd, centralized logging
Culture
DOES14 - David Ashman - Blackboard Learn - Keep Your Head in the Clouds
“QA is responsible for defining the testing strategy.” 
“QA is responsible for checking quality when a feature is 
done.” 
“Unit testing is not enough to verify a feature.”
Development Operations
Executive Buy-in
DOES14 - David Ashman - Blackboard Learn - Keep Your Head in the Clouds
DOES14 - David Ashman - Blackboard Learn - Keep Your Head in the Clouds
What we’ve achieved 
● Development teams deploying their production 
environments. 
● Developers solving operational issues in production. 
● Open feedback loops on operational issues. 
● Data-driven decisions based on that feedback.
DOES14 - David Ashman - Blackboard Learn - Keep Your Head in the Clouds
I might be able to help... 
● Understand the impact that cloud computing can have 
on DevOps even in an “enterprise” company. 
● Understand the cost models comparing cloud 
computing and traditional hosting. 
● Frame your pitch to the executive team to make 
material changes in your company culture.
I’d like to learn more about... 
● Effective testing strategies for traditionally manual tests 
(UI, etc). 
● Applying DevOps strategies for shipped-to-premise 
software.
Thanks! 
dashman@blackboard.com 
@davidbashman

More Related Content

PDF
THE PLEASURES OF ON-PREM, TOMER GABEL
PPTX
Continuous integration at scale
PDF
Grammarly Meetup: DevOps at Grammarly: Scaling 100x
PDF
2016 04-25 continuous integration at google scale
PPTX
Devteach 2017
PPTX
Practical Methods for Adopting DevOps - Michael Stahnke
ODP
Test driven development with ansible
PPTX
Introduction to the Data Grid
THE PLEASURES OF ON-PREM, TOMER GABEL
Continuous integration at scale
Grammarly Meetup: DevOps at Grammarly: Scaling 100x
2016 04-25 continuous integration at google scale
Devteach 2017
Practical Methods for Adopting DevOps - Michael Stahnke
Test driven development with ansible
Introduction to the Data Grid

What's hot (19)

PPTX
Kimmo Hakala. Comaqa Spring 2018. Challenges and good QA practices in softwar...
PDF
Object-oriented design for infrastructure-as-a-code - Anna Bankirer
PDF
Salesforce DevOps: Where Do You Start?
PPTX
Continuous Deployment
PDF
How we improved iOS delivery speed from QA side
PPTX
Continuous delivery in practice (public)
PDF
Continuous Testing in DevOps
PDF
Zero Latency: Building a Telemetry Platform on the Elastic Stack
PDF
Laptop Devops: Putting Modern Infrastructure Automation to Work For Local Dev...
PDF
How To Build Auto-Adaptive Machine Learning Models with Kubernetes
PPTX
Fundamentals of DevOps and CI/CD
PPTX
Notes from sqa days 17.pptx
PDF
There and back again, Our journey with QA Reports and metrics
PDF
Tapjoy OpenStack Summit Paris Breakout Session
PDF
Essentielle værktøjer for det agile team
PPTX
PDF
Integration testing in enterprises using TaaS
PDF
The Key to DevOps? Testing Early in the Pipeline
PDF
Patterns of a "Good" Test Automation Framework, Locators & Data
Kimmo Hakala. Comaqa Spring 2018. Challenges and good QA practices in softwar...
Object-oriented design for infrastructure-as-a-code - Anna Bankirer
Salesforce DevOps: Where Do You Start?
Continuous Deployment
How we improved iOS delivery speed from QA side
Continuous delivery in practice (public)
Continuous Testing in DevOps
Zero Latency: Building a Telemetry Platform on the Elastic Stack
Laptop Devops: Putting Modern Infrastructure Automation to Work For Local Dev...
How To Build Auto-Adaptive Machine Learning Models with Kubernetes
Fundamentals of DevOps and CI/CD
Notes from sqa days 17.pptx
There and back again, Our journey with QA Reports and metrics
Tapjoy OpenStack Summit Paris Breakout Session
Essentielle værktøjer for det agile team
Integration testing in enterprises using TaaS
The Key to DevOps? Testing Early in the Pipeline
Patterns of a "Good" Test Automation Framework, Locators & Data
Ad

Viewers also liked (20)

PPTX
DOES15 - Randy Shoup - Ten (Hard-Won) Lessons of the DevOps Transition
PPTX
DOES16 London - Jonathan Fletcher - Re-imagining Hiscox IT: A DevOps Story
PPTX
DOES15 - Mirco Hering - Adopting DevOps Practices for Systems of Record – An ...
PPT
DOES14 - Justin Arbuckle - CHEF - Hunting the DevOps Whale
PPTX
DOES14 - Reena Mathew and Dave Mangot - Salesforce
PPTX
DOES14 - John Kosco - Blue Agility - Discover How to Improve Productivity by ...
PPTX
DOES16 London - Charlotta Croiset van Uchelen - Choose Your Own Boss
PDF
DOES15 - Finn-Braun and Reed - The Blameless Cloud: Bringing Actionable Retro...
PPTX
DOES15 - Mike Bland - Pain Is Over, If You Want It
PPTX
DOES16 London - Philippe Guenet - G3 Model –A Practical Lean Approach to Impr...
PPTX
DOES15 - Alan Kraft - Learning & Teaching DevOps in the Enterprise
PPTX
DOES15 - Mark Michaelis - Metrics that Matter
PPTX
DOES14 - Aimee Bechtle and Bill Donaldson - The MITRE Corp
PPTX
DOES16 London - Kevin Bowman - Surviving the Grand National
PPTX
DOES14 - Shakeel Sorathia - Ticketmaster - 40 Year Old Company Transformed by...
PPTX
DOES16 San Francisco - Damon Edwards - The Talent You Need is Already Inside ...
PPTX
DOES15 - Scott Prugh & Erica Morrison - Conway & Taylor Meet the Strangler (v...
PPTX
DOES16 London - Pat Reed - Mind the GAAP: A Playbook for Agile Accounting
PPTX
DOES16 San Francisco - Carmen DeArdo, Cindy Payne, & Jim Grafmeyer - Episode ...
PPTX
DOES15 - Aaron Volkmann - Busting Silos & Red Tape: DevOps in Federal Government
DOES15 - Randy Shoup - Ten (Hard-Won) Lessons of the DevOps Transition
DOES16 London - Jonathan Fletcher - Re-imagining Hiscox IT: A DevOps Story
DOES15 - Mirco Hering - Adopting DevOps Practices for Systems of Record – An ...
DOES14 - Justin Arbuckle - CHEF - Hunting the DevOps Whale
DOES14 - Reena Mathew and Dave Mangot - Salesforce
DOES14 - John Kosco - Blue Agility - Discover How to Improve Productivity by ...
DOES16 London - Charlotta Croiset van Uchelen - Choose Your Own Boss
DOES15 - Finn-Braun and Reed - The Blameless Cloud: Bringing Actionable Retro...
DOES15 - Mike Bland - Pain Is Over, If You Want It
DOES16 London - Philippe Guenet - G3 Model –A Practical Lean Approach to Impr...
DOES15 - Alan Kraft - Learning & Teaching DevOps in the Enterprise
DOES15 - Mark Michaelis - Metrics that Matter
DOES14 - Aimee Bechtle and Bill Donaldson - The MITRE Corp
DOES16 London - Kevin Bowman - Surviving the Grand National
DOES14 - Shakeel Sorathia - Ticketmaster - 40 Year Old Company Transformed by...
DOES16 San Francisco - Damon Edwards - The Talent You Need is Already Inside ...
DOES15 - Scott Prugh & Erica Morrison - Conway & Taylor Meet the Strangler (v...
DOES16 London - Pat Reed - Mind the GAAP: A Playbook for Agile Accounting
DOES16 San Francisco - Carmen DeArdo, Cindy Payne, & Jim Grafmeyer - Episode ...
DOES15 - Aaron Volkmann - Busting Silos & Red Tape: DevOps in Federal Government
Ad

Similar to DOES14 - David Ashman - Blackboard Learn - Keep Your Head in the Clouds (20)

PDF
[DPE Summit] How Improving the Testing Experience Goes Beyond Quality: A Deve...
PPTX
All you need is fast feedback loop, fast feedback loop, fast feedback loop is...
PDF
Transforming to OpenStack: a sample roadmap to DevOps
PPTX
All you need is fast feedback loop, fast feedback loop, fast feedback loop is...
PDF
The Complexity to "Yes" in Analytics Software and the Possibilities with Dock...
PDF
Delivering Better Software Faster (Without Breaking Everything)
PPTX
Jonathon Wright - Intelligent Performance Cognitive Learning (AIOps)
PPTX
Innovate Better Through Machine data Analytics
PDF
The Business Value of PaaS Automation - Kieron Sambrook-Smith - Presentation ...
PDF
DOES14: Scott Prugh, CSG - DevOps and Lean in Legacy Environments
PPTX
Big datatraining.in devops-part1
PPTX
Big datatraining.in devops-part1
PPTX
Big datatraining.in devops-part1
PPTX
Big datatraining.in devops-part1
PPTX
Big datatraining.in devops-part1
PPTX
Big datatraining.in devops-part1
PPTX
Big datatraining.in devops-part1
PDF
DOES14 - Scott Prugh - CSG - DevOps and Lean in Legacy Environments
PDF
Introduction to DevOps
PPTX
SplunkLive! London 2016 Splunk for Devops
[DPE Summit] How Improving the Testing Experience Goes Beyond Quality: A Deve...
All you need is fast feedback loop, fast feedback loop, fast feedback loop is...
Transforming to OpenStack: a sample roadmap to DevOps
All you need is fast feedback loop, fast feedback loop, fast feedback loop is...
The Complexity to "Yes" in Analytics Software and the Possibilities with Dock...
Delivering Better Software Faster (Without Breaking Everything)
Jonathon Wright - Intelligent Performance Cognitive Learning (AIOps)
Innovate Better Through Machine data Analytics
The Business Value of PaaS Automation - Kieron Sambrook-Smith - Presentation ...
DOES14: Scott Prugh, CSG - DevOps and Lean in Legacy Environments
Big datatraining.in devops-part1
Big datatraining.in devops-part1
Big datatraining.in devops-part1
Big datatraining.in devops-part1
Big datatraining.in devops-part1
Big datatraining.in devops-part1
Big datatraining.in devops-part1
DOES14 - Scott Prugh - CSG - DevOps and Lean in Legacy Environments
Introduction to DevOps
SplunkLive! London 2016 Splunk for Devops

More from Gene Kim (20)

PDF
DOES SFO 2016 - Kaimar Karu - ITIL. You keep using that word. I don't think i...
PDF
DOES SFO 2016 - Ross Clanton and Chivas Nambiar - DevOps at Verizon
PPTX
DOES SFO 2016 - Scott Willson - Top 10 Ways to Fail at DevOps
PPTX
DOES SFO 2016 - Daniel Perez - Doubling Down on ChatOps in the Enterprise
PPTX
DOES SFO 2016 - Greg Maxey and Laurent Rochette - DSL at Scale
PPTX
DOES SFO 2016 - Rich Jackson & Rosalind Radcliffe - The Mainframe DevOps Team...
PDF
DOES SFO 2016 - Greg Padak - Default to Open
PPTX
DOES SFO 2016 - Michael Nygard - Tempo, Maneuverability, Initiative
PPTX
DOES SFO 2016 - Alexa Alley - Value Stream Mapping
PPTX
DOES SFO 2016 - Mark Imbriaco - Lessons From the Bleeding Edge
PPTX
DOES SFO 2016 - Topo Pal - DevOps at Capital One
PPTX
DOES SFO 2016 - Cornelia Davis - DevOps: Who Does What?
PPTX
DOES SFO 2016 - Avan Mathur - Planning for Huge Scale
PPTX
DOES SFO 2016 - Chris Fulton - CD for DBs
PPTX
DOES SFO 2016 - Marc Priolo - Are we there yet?
PPTX
DOES SFO 2016 - Steve Brodie - The Future of DevOps in the Enterprise
PDF
DOES SFO 2016 - Aimee Bechtle - Utilizing Distributed Dojos to Transform a Wo...
PPTX
DOES SFO 2016 - Ray Krueger - Speed as a Prime Directive
PPTX
DOES SFO 2016 - Paula Thrasher & Kevin Stanley - Building Brilliant Teams
PDF
DOES SFO 2016 - Kevina Finn-Braun & J. Paul Reed - Beyond the Retrospective: ...
DOES SFO 2016 - Kaimar Karu - ITIL. You keep using that word. I don't think i...
DOES SFO 2016 - Ross Clanton and Chivas Nambiar - DevOps at Verizon
DOES SFO 2016 - Scott Willson - Top 10 Ways to Fail at DevOps
DOES SFO 2016 - Daniel Perez - Doubling Down on ChatOps in the Enterprise
DOES SFO 2016 - Greg Maxey and Laurent Rochette - DSL at Scale
DOES SFO 2016 - Rich Jackson & Rosalind Radcliffe - The Mainframe DevOps Team...
DOES SFO 2016 - Greg Padak - Default to Open
DOES SFO 2016 - Michael Nygard - Tempo, Maneuverability, Initiative
DOES SFO 2016 - Alexa Alley - Value Stream Mapping
DOES SFO 2016 - Mark Imbriaco - Lessons From the Bleeding Edge
DOES SFO 2016 - Topo Pal - DevOps at Capital One
DOES SFO 2016 - Cornelia Davis - DevOps: Who Does What?
DOES SFO 2016 - Avan Mathur - Planning for Huge Scale
DOES SFO 2016 - Chris Fulton - CD for DBs
DOES SFO 2016 - Marc Priolo - Are we there yet?
DOES SFO 2016 - Steve Brodie - The Future of DevOps in the Enterprise
DOES SFO 2016 - Aimee Bechtle - Utilizing Distributed Dojos to Transform a Wo...
DOES SFO 2016 - Ray Krueger - Speed as a Prime Directive
DOES SFO 2016 - Paula Thrasher & Kevin Stanley - Building Brilliant Teams
DOES SFO 2016 - Kevina Finn-Braun & J. Paul Reed - Beyond the Retrospective: ...

Recently uploaded (20)

PPTX
Operating system designcfffgfgggggggvggggggggg
PPTX
L1 - Introduction to python Backend.pptx
PDF
Softaken Excel to vCard Converter Software.pdf
PDF
Navsoft: AI-Powered Business Solutions & Custom Software Development
PPTX
CHAPTER 2 - PM Management and IT Context
PPTX
ISO 45001 Occupational Health and Safety Management System
PDF
Raksha Bandhan Grocery Pricing Trends in India 2025.pdf
PPTX
Transform Your Business with a Software ERP System
PPT
Introduction Database Management System for Course Database
PDF
System and Network Administration Chapter 2
PPTX
Introduction to Artificial Intelligence
PDF
2025 Textile ERP Trends: SAP, Odoo & Oracle
PDF
Flood Susceptibility Mapping Using Image-Based 2D-CNN Deep Learnin. Overview ...
PDF
Odoo Companies in India – Driving Business Transformation.pdf
PDF
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
PPTX
Agentic AI Use Case- Contract Lifecycle Management (CLM).pptx
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
PDF
Digital Strategies for Manufacturing Companies
PDF
Design an Analysis of Algorithms I-SECS-1021-03
PPTX
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
Operating system designcfffgfgggggggvggggggggg
L1 - Introduction to python Backend.pptx
Softaken Excel to vCard Converter Software.pdf
Navsoft: AI-Powered Business Solutions & Custom Software Development
CHAPTER 2 - PM Management and IT Context
ISO 45001 Occupational Health and Safety Management System
Raksha Bandhan Grocery Pricing Trends in India 2025.pdf
Transform Your Business with a Software ERP System
Introduction Database Management System for Course Database
System and Network Administration Chapter 2
Introduction to Artificial Intelligence
2025 Textile ERP Trends: SAP, Odoo & Oracle
Flood Susceptibility Mapping Using Image-Based 2D-CNN Deep Learnin. Overview ...
Odoo Companies in India – Driving Business Transformation.pdf
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
Agentic AI Use Case- Contract Lifecycle Management (CLM).pptx
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
Digital Strategies for Manufacturing Companies
Design an Analysis of Algorithms I-SECS-1021-03
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...

DOES14 - David Ashman - Blackboard Learn - Keep Your Head in the Clouds

  • 1. Keep Your Head in the Clouds Blackboard’s Transition from Enterprise to Cloud Software Through DevOps David Ashman Chief Architect, Cloud Architecture @davidbashman
  • 7. ● The industry leader in educational technology and services ● 17 years young ● Privately held ● $450M revenue at time of going private ● Headquarters in Washington, DC
  • 9. Blackboard Learn ● 17 year old codebase with roots in Perl ● Millions of lines of Java code (Hybrid Java/Perl for many years) ● 7 development/operations offices, worldwide ● 700 people between development, testing and operations (All products) ● ~3000 virtual machines across 1000 clients in hosting ● ~8PB of content and data storage
  • 10. We are a horse.
  • 11. And like so many of you... ● 6+ month lead times ● Technical debt ● High update failure rates ● Poor communication paths from development to operations ● Poor feedback loops from operations to development
  • 12. But through the art of DevOps...
  • 13. We are a horse.
  • 14. We are a horse. ^
  • 15. What changed? ● Automation ● Cloud Infrastructure ● Culture
  • 17. # of code commits
  • 23. # of code commits
  • 24. # of code commits
  • 25. # of code commits
  • 29. But wait... There’s more! Functional Acceptance Testing
  • 30. Value 5 minutes Create Ticket 4 hours 15 minutes 1 hour 1 hour Commit/ Build/ Integrate 5 minutes Problem! Code Test Suite Analyze Failed Tests 5 minutes 36 hours 24 hours 6 hours (value) 70 hours total time = 9% Efficient Waste (wait) 15 minutes Assign Ticket 6 hours
  • 31. Development Testing (2-5 days) Commit Ticket Project Management 3-6+ days
  • 32. 100s of Failures 60% script issues (invalid tests, out of sync with functionality) 30% data/environment issues (data left in the database or filesystem) 7% pre-existing issues 3% newly discovered issues
  • 34. The Problem ● Elongated testing cycles (3+ months) ● Longer time to market ● Reduced visibility to our development team ● Long delays between coding and fixing ● Too much noise distracting us from product improvements
  • 35. Test Automation ● TDD ● Fully automated acceptance testing pipeline ● < 30m acceptance test feedback ● New testing approaches (Jasmine, Protractor, RESTAssured) 6+ month lead time 1-2 week lead time
  • 37. Product Development Operations != != Development Test Production
  • 39. Deployment Environments ● Snowflakes - No two environments were alike ● Completely different deployment methods o Manual development builds o Automated installs in testing o Gold master images in production ● Completely different deployment architectures o Windows development machines o Linux VMs in testing o Linux clusters in production
  • 44. Learn in the Cloud ● Everything, from the ground up, is automated. ● Orchestration in code - stored in SCC, executed in ALL deployment environments. ● On demand provisioning for developers. o Still develop on their laptops, but can now test in a real deployment environment.
  • 45. BbCloud ● OpenStack in our data centers ● Abstract cloud fabric to gain benefits in both clouds ● Centralized, standardized Chef automation ● Increased visibility for development o Monitoring, APM, statsd, centralized logging
  • 48. “QA is responsible for defining the testing strategy.” “QA is responsible for checking quality when a feature is done.” “Unit testing is not enough to verify a feature.”
  • 53. What we’ve achieved ● Development teams deploying their production environments. ● Developers solving operational issues in production. ● Open feedback loops on operational issues. ● Data-driven decisions based on that feedback.
  • 55. I might be able to help... ● Understand the impact that cloud computing can have on DevOps even in an “enterprise” company. ● Understand the cost models comparing cloud computing and traditional hosting. ● Frame your pitch to the executive team to make material changes in your company culture.
  • 56. I’d like to learn more about... ● Effective testing strategies for traditionally manual tests (UI, etc). ● Applying DevOps strategies for shipped-to-premise software.

Editor's Notes

  • #3: So who am I. I build things for Blackboard.
  • #4: And I think a lot. Though, usually I do this with clothes on… especially at the office.
  • #5: Sometimes I manage people
  • #6: But really, I build things for Blackboard.
  • #7: And just generally try to make things better. And this presentation is about just that – making things better at Blackboard through DevOps.
  • #8: First a little bit about Blackboard: Went private in 2011
  • #9: Extensive portfolio of teaching and learning, communications and analytics products and services. These products serve all stages of education from K through16 and on into adult continuing education. But today I’m going to focus on our flagship Learn platform.
  • #11: Backstory - Gene Kim (the conference creator) describes companies as unicorns (“fictionally” perfect companies like Netflix, Ebay, Etsy, Facebook, etc) and horses (everyone else). He postulates that DevOps is even more valuable to the horses than the unicorns of the world.
  • #12: Describes the common enterprise issues that we face like so many other companies at the conference. Creates connection with others at the conference.
  • #15: Draws focus towards our improvements as a company.
  • #18: For the product, we wanted to increase our release cadence and fix issues faster in the field. To do this, we took on modularizing our product.
  • #19: Tried to contain the growth by introducing tools to improve the build performance and visibility.
  • #20: Ultimately, we were building a monolith. And with that came: Poor product quality Slower release times More instability Slower developer productivity
  • #21: The machine was getting more and more complex and error prone. And the larger the product got, the longer the lead times got. 24-36 Hour integration feedback
  • #22: Enter Mike McGarr. Though no longer at Blackboard, he was hired by Steve Feldman, another former blackboarder here this week, to really kickstart DevOps.
  • #23: Mike brought a different mindset to our team. He started to push the team to think about new ideas.
  • #24: For the product, we wanted to increase our release cadence and fix issues faster in the field. To do this, we took on modularizing our product.
  • #25: For the product, we wanted to increase our release cadence and fix issues faster in the field. To do this, we took on modularizing our product.
  • #26: This made for some impressive improvements in code modularity and in combination with the updates to our build process, better feedback to the developers. This graph shows the shift from our previous monolithic codebase to our modular codebase that can be built in pieces.
  • #27: He replaced the antiquated build tools. He started to introduce automation tools like Chef and Puppet to our integration test infrastructure. And this wasn’t just replacing our current build with a new one. He was introducing tools that allowed developers to do their own operations work. He was taking us towards DevOps.
  • #34: Old acceptance tests *heavily* skewed towards GUI tests.
  • #38: Differentiation between test deployment environments creates inconsistent testing results. “It worked on my machine” syndrome.
  • #41: Chef began to take hold, but we had two completely separate efforts with minimal knowledge sharing.
  • #42: The promise of cloud computing was our next stage.
  • #43: I got the opportunity to build a super team of development and operations engineers to take on an shadow project - to take our flagship product, Blackboard Learn, into the cloud.
  • #48: As an organization, we were very siloed. Every team just packaged up a deliverable and passed it over to the next team. Dev built a product and handed it off to QA for testing. Washed it’s hands and moved on. QA handed the GA build to operations and washed it’s hands. Operations was left on it’s own to make it work with very little feedback to the development team. There was no shared responsibility.
  • #51: Key to cultural change at Blackboard was executive buy in. Once the team saw that the leadership wanted devops, the tide shifted.
  • #52: Single biggest change was bringing the groups together into one organization. We put people in leadership positions that cared about development and operations in one. We placed development groups into the infrastructure and IT teams. We integrated application operations teams back into the development teams.
  • #53: And we automated all the things! No, you can’t automate culture changes. This takes human capital.
  • #55: And most importantly, we are finally talking.
  • #56: I was honored to be invited to speak along side some of the leaders in DevOps. I hope that I can offer something back to the community here. «