36
Cultural Change using Docker Dockerizing Demonware @tomwillfixit #dockercon

Cultural Change using Docker Dockerizing Demonware @tomwillfixit #dockercon

Embed Size (px)

Citation preview

Page 1: Cultural Change using Docker Dockerizing Demonware @tomwillfixit #dockercon

Cultural Change using Docker Dockerizing Demonware

@tomwillfixit #dockercon

Page 2: Cultural Change using Docker Dockerizing Demonware @tomwillfixit #dockercon

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

Page 3: Cultural Change using Docker Dockerizing Demonware @tomwillfixit #dockercon

Who are Demonware?

• Demonware provide online services and infrastructure for some of the world’s most popular video game franchises.

Page 4: Cultural Change using Docker Dockerizing Demonware @tomwillfixit #dockercon

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."

Page 5: Cultural Change using Docker Dockerizing Demonware @tomwillfixit #dockercon

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.

Page 6: Cultural Change using Docker Dockerizing Demonware @tomwillfixit #dockercon

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

Page 7: Cultural Change using Docker Dockerizing Demonware @tomwillfixit #dockercon

Most popular game services

• Matchmaking

• Leaderboards

• Storage

• Identity Management

Page 8: Cultural Change using Docker Dockerizing Demonware @tomwillfixit #dockercon

Tech Stack

Page 9: Cultural Change using Docker Dockerizing Demonware @tomwillfixit #dockercon

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

Page 10: Cultural Change using Docker Dockerizing Demonware @tomwillfixit #dockercon

Changes in the gaming industry

• Number of platforms has increased and mobile gaming market is expanding

Page 11: Cultural Change using Docker Dockerizing Demonware @tomwillfixit #dockercon

Growth

Page 12: Cultural Change using Docker Dockerizing Demonware @tomwillfixit #dockercon

Challenges facing Demonware

• Shorter development cycles

• Increasingly complex services

• Supporting more platforms

• Longer term support cycle per title

• More innovation to meet gamer diversity

Page 13: Cultural Change using Docker Dockerizing Demonware @tomwillfixit #dockercon

Engineering culture at Demonware

Page 14: Cultural Change using Docker Dockerizing Demonware @tomwillfixit #dockercon

Core values

• Passion

• Diversity

• Honesty

• Fun

Page 15: Cultural Change using Docker Dockerizing Demonware @tomwillfixit #dockercon

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

Page 16: Cultural Change using Docker Dockerizing Demonware @tomwillfixit #dockercon

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)

Page 17: Cultural Change using Docker Dockerizing Demonware @tomwillfixit #dockercon

Introducing Docker into Demonware

• Docker demos

• One to One tuition

• Meetups and Bootcamps

• Docker-focused sprints

• Swag giveaways

Page 18: Cultural Change using Docker Dockerizing Demonware @tomwillfixit #dockercon

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

Page 19: Cultural Change using Docker Dockerizing Demonware @tomwillfixit #dockercon
Page 20: Cultural Change using Docker Dockerizing Demonware @tomwillfixit #dockercon

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

Page 21: Cultural Change using Docker Dockerizing Demonware @tomwillfixit #dockercon

2013

Page 22: Cultural Change using Docker Dockerizing Demonware @tomwillfixit #dockercon

2015

Page 23: Cultural Change using Docker Dockerizing Demonware @tomwillfixit #dockercon
Page 24: Cultural Change using Docker Dockerizing Demonware @tomwillfixit #dockercon
Page 25: Cultural Change using Docker Dockerizing Demonware @tomwillfixit #dockercon

8 Steps towards change

Page 26: Cultural Change using Docker Dockerizing Demonware @tomwillfixit #dockercon

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??

Page 27: Cultural Change using Docker Dockerizing Demonware @tomwillfixit #dockercon

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

Page 28: Cultural Change using Docker Dockerizing Demonware @tomwillfixit #dockercon

2: Building a coalition

• Superstars

• Management

• Developers

• Ops

Page 29: Cultural Change using Docker Dockerizing Demonware @tomwillfixit #dockercon

3: Forming a Strategic Initiative

• Short and long term plan

• Selling Docker across Demonware

• Freedom of choice

• "Cool" and "Fun" are not plans

Page 30: Cultural Change using Docker Dockerizing Demonware @tomwillfixit #dockercon

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

Page 31: Cultural Change using Docker Dockerizing Demonware @tomwillfixit #dockercon

5: Remove barriers

• Provide pre-baked VMs to Developers

• Docker Registry set up

• Build Engineering tools Dockerised

• Simplify Docker integration with CI (Bamboo)

Page 32: Cultural Change using Docker Dockerizing Demonware @tomwillfixit #dockercon

6: Generate short term wins

• Isolated builds

• Parallel Unit Testing

• Share core tooling

• Greater portability

Page 33: Cultural Change using Docker Dockerizing Demonware @tomwillfixit #dockercon

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

Page 34: Cultural Change using Docker Dockerizing Demonware @tomwillfixit #dockercon

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

Page 35: Cultural Change using Docker Dockerizing Demonware @tomwillfixit #dockercon

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

Page 36: Cultural Change using Docker Dockerizing Demonware @tomwillfixit #dockercon

Thank youThomas Shaw

@tomwillfixit #dockercon