Upload
maciej-mroz
View
501
Download
2
Embed Size (px)
DESCRIPTION
My presentation from Digital Dragons 2014 conference on organization of online gaming company with high level coverage of development process, technology, data analytics and human factors.
Citation preview
It’s not a product, it’s a service!Maciej Mróz
CTO, [email protected]
Focused on synchronous multiplayer games for most of our existence
Office in Kraków city center
Onlinegamingcompany
60+ people andgrowing
Social casino, arcade and skill games
Onlinegamingcompany
About Us
Founded10+ years ago
Office in Krakówcity center
2
Social casino
Casual Multiplayer
• Social casino
• Casual multiplayer
• Multiple platforms
• Web
• Social networks
• Mobile
Our Products
4
More than game development
Communitymanagement
Server operations
Data analytics
Marketing
Webdevelopment
4
5
Making it work
Development Process Data Technology People
6
Development Process
“Lean startup” approach
Validate your game idea first•Everything else usually can be deferred
•MVP is probably half of what you think it isEvery game
is a learning opportunity
Be prepared for the unexpected
Careful about futureproofing by developers
Team dedicated toa game may actually grow post release
Users expect new content/features to be delivered on regular basis
A lot of effort spent on optimization• A/B testing
experiments• Exploratory analytics
Successful games are serving players for many years
Development Process
Release is only the beginning...
7
8
Development Process
Scrum in game production
9
Development Process
Scrum in game production
Does not apply to prototyping process(ad-hoc 2-3 person teams)
Dedicated Product Owners and Scrum Masters
External training/coaching absolutely worth it
Getting it right is very challenging
10
Development Process
Scaling game development/operations
Game teams are independent of each other
Shared technology•GitHub-like development model•Some oversight necessary
Teams handle big part of operations
11
Data
Analytics = process + tools
• Leaning more to the process side
• Tools are a solvable problem
• Collection/storage is cheap
• Analysis is a significant investment
• Data science know-how takes a lot of time
to develop and is hard to acquire
• Third party tools are getting better
12
Data
Scientific approach to productdevelopment
Don’t guess if you don’t have to:
• The answer may be in the data you already have• Or in the data you
can easily get
Guessing is fine, but:
• State your assumptions• Validate afterwards
13
Data
Information flow
Well defined common KPIs:
• Accessible to anyone in game team within <24 h• Comparative analysis of games
Raw data access for game teams
• Can’t predict all needs upfront• Deep product knowledge required for
meaningful insights• Per-game internal KPIs
14
Technology
Shared technology
Cross cutting concerns
• Scalability, availability, infrastructure monitoring
• Build, deployment
Know-how and skills can be brought
from one projectto another
Services shared between games
• Analytics, payment processing
Standardsfor local
and production environment
15
Technology
Continuous Integration
Everything has to bein source control!
Frequent local releases•Fully automated, based on development branch
Always ready for production release•Merge to master•CI prepares release, but pushing it to
players is human action•Anyone on the game team can do it
16
Technology
Production environment
• All new games in AWS
• On the surface it’s not the most cost effective solution• A lot of added value (RDS, DynamoDB, ELB, CloudWatch …)• APIs allow us to automate tasks traditionally done by human administrators• Bigger percentage of engineering efforts focused on core business
• Production release takes <10 min for any project (usually much less, we cache prebuilt binaries)
• Quick rollbacks (<1 min)
Technology
Multiple client platforms
17
• A tax on development cost• “Mobile” is much more than one platform: on the
OS side there’s iOS/Android/WP + tablet vs phone form factors (different design, possibly functionality)
• Cross platform client technologies help
We currently use Adobe AIRMay switch to something else
18
Technology
Software quality
Server problems are often much worse than client problems• In online game if something breaks
once per million sessions, it is sure to happen!
Good engineering practices pay off, bad ones come back to bite you• Sometimes years later
Balance vs development velocity is necessary!
We are in it for a long run
People
19
People
We are in it for a long run
20
• Successful games will entertain players for many years• People need to be prepared for a marathon, not a sprint• Crunch is not an option, we work 40-hour weeks• Teamwork is critical• A lot of know-how is only in a person’s head• Happy employees stay with us longer
People
Killing products/shifting focus
21
• Not everyone handles it well• Conflicting points of view are unavoidable• Always a tough decision• Treat it as learning opportunity
22
People
Hiring
• Not only about technical competence!• Collaboration and knowledge sharing, critical to our success• Communication skills• Personality fit• Industry knowledge• Passion!
www.ganymede.eu