2. Who am I?
• Build Engineer at Demonware (Activision)
• Originally from a small town called
Carrickfergus in Northern Ireland. Moved to
Dublin in 2002.
• Previous roles include :
- QA engineer at Sun Microsystems
- Configuration Manager at Citigroup
- Automation Engineer at Oracle
3. Who are Demonware?
• Demonware provide online services and
infrastructure for some of the world’s most
popular video game franchises.
4. Mission statement
"To enable the creation of great online
experiences for gamers by being the
most fearless and reliable provider of
online services in the gaming
industry."
5. Demonware facts
• Founded in 2003 by Dylan Collins and Sean
Blanchfield
• Acquired by Activision Blizzard in 2007
• Offices in Dublin (Ireland), Vancouver and
Shanghai
• We have created services for and supported
over 100 games since 2004.
6. Demonware by the numbers
• ~200 employees
• 469 million registered gamers
• 4800 servers
• 132 billion API calls per month
• 15.1 million requests per second at peak
• 1.2+ million metrics a minute
• 25 Million Database queries per second
7. Most popular game services
• Matchmaking
• Leaderboards
• Storage
• Identity Management
9. Changes in the gaming industry
• Gamers want more content, more often
• Online Public Betas are becoming more common
• Multiple Triple A title releases per year
• Increasingly complex services
10. Changes in the gaming industry
• Number of platforms has increased and mobile
gaming market is expanding
12. Challenges facing Demonware
• Shorter development cycles
• Increasingly complex services
• Supporting more platforms
• Longer term support cycle per title
• More innovation to meet gamer diversity
15. Engineering culture at Demonware
• Open source/Commercial/Internal
• Fail fast, learn faster
• Missing deadlines is not an option
• Automate everything
• Build the right software abstractions
16. Engineering culture at Demonware
• Maintain a respectful work environment
• Invest in automated testing
• Build a culture of learning and continuous
improvement
• Hire the best
• MGN (Make GO Now)
17. Introducing Docker into Demonware
• Docker demos
• One to One tuition
• Meetups and Bootcamps
• Docker-focused sprints
• Swag giveaways
18. Why Docker?
• What was it about Docker?
- Easy to use
- Low entry level
- Solved some issues overnight
- Encourages sharing and responsibility
- Honest
- Polarizing
- Standard interface to diverse applications
19.
20. How we use Docker
• Introduced by the Build Engineering team in
September 2013 as a solution to "Dependency
Hell".
• Currently used for :
- Continuous Integration Pipelines
- Development of customer-facing services
- Development and deployment of internal
tooling
26. 8 Steps towards change
• Started in September 2013
• Based on Kotters 8 Step process for leading
change
• How to introduce a disruptive technology into
Demonware ... without disruption??
27. 1: Create a sense of urgency
• Highlight current flaws in CI
• Paint a vision of the future
• Stress the importance of core values
• Avoid selling Snake Oil
28. 2: Building a coalition
• Superstars
• Management
• Developers
• Ops
29. 3: Forming a Strategic Initiative
• Short and long term plan
• Selling Docker across Demonware
• Freedom of choice
• "Cool" and "Fun" are not plans
30. 4: Enlist an army
• Encourage the coalition to standardize on
Docker
• Provide early access to the latest and greatest
Docker releases
• Demonstrate tooling in the Docker Eco-system
• Organize Meetups, Bootcamps, Hackathons
31. 5: Remove barriers
• Provide pre-baked VMs to Developers
• Docker Registry set up
• Build Engineering tools Dockerised
• Simplify Docker integration with CI (Bamboo)
32. 6: Generate short term wins
• Isolated builds
• Parallel Unit Testing
• Share core tooling
• Greater portability
33. 7: Sustain and Accelerate
• Demonware are currently at this stage
• Increasing use cases for Docker
• Shorter feedback loops for developers
• Rapid prototyping and cross functional demos
• Still some convincing required
34. 8: Institute change
• This is where Cultural Change really starts
• Reiterate the benefits
• Ensure successes are visible and
communicated
• Reinforce the culture in new hires
35. Summary
• Changing your toolset is easy, mindset not so
much
• Docker can be used to support and reinforce
core values
• Docker gives us the tools to scale while
remaining technically diverse