We would like to give a huge thank you to our speakers, the talks they deliver are the reason we have this conference.
The Windows Azure architecture is based on scale-out and offers different scale-units to build large systems. In this session, we will discuss the capabilities for compute, distributed caching, storage and big data.
Beat is part of Microsoft’s Platform Strategy Group which is developing the strategies relating to platform services and service-based applications. He started to focus on cloud computing in 2008 and just loves the opportunities it provides to businesses of all sizes. In his 10 years at Microsoft, Beat has been responsible for cloud platform adoption among developers in Western Europe and provided advice on software strategy and architecture across Europe, the Middle East and Africa. Before joining Microsoft, he was an independent architect and developer and was involved in a wide variety of projects, ranging from real-time building control systems, best-selling shrink-wrapped products to large-scale CRM and ERP systems.
Nomanini's target market, mostly micro-entrepreneurs, rely on the Nomanini solution for their livelihood. Therefore Nomanini has to surmount the difficulties of building a scalable, repeatedly deliverable hardware, firmware and back-end software solution capable of processing millions of financial transactions in the technically difficult African environment.
In his talk Dale discusses these challenges and reflects on solutions, lessons learned and future improvements.
Dale is CTO of Nomanini, a Cape Town based startup that has developed a low cost, mobile point-of-sale terminal and the technology ecosystem for it to operate in informal markets. His genesis is as an electro-mechanical engineer developing sophisticated remote monitoring systems in his own start-up business, joining Nomanini at its inception in 2011 along with his staff.
Dale is passionate about the processes of product development, continuous improvement, the motivation and management of people as well as the complex and challenging mechanism of implementing continuous delivery across hardware, firmware and software, all in an Agile context.
Like his peers in Nomanini, Dale is driven by the twin goals of powering the needs of the micro-entrepreneur in Africa and the satisfaction of a job well done.
CTO and Founder
The story of how RightShift scaled its business and architecture to successfully compete in the competitive social casino arena with their flagship Clickfun Casino product. Daniel shares first-hand insight into scaling a modern business and high-volume platform and is as much an enlightening tale of getting things right as a cautionary tale of what not to do.
Daniel has spent more than 15 years designing and building massively scalable systems for the gaming and gambling sectors. He began in 1997 as a software developer for one of the world’s first online casino groups, and in 2005 co-founded RightShift as a multiplayer FPS tournament business that later pivoted into social gaming in 2008 and (several apps later) launched Clickfun Casino in 2011.
Bootstrapped entirely by the founders without any external funding, Daniel and his team have built out proprietary infrastructure capable of supporting millions of users. This experience together with his background in real money gaming gives Daniel a unique understanding of the overall gaming market and a perspective on the rapid convergence of social and real money gaming that few others are likely to have.
At Etsy we have over 100 engineers deploying more than 40 times a day. This culture of continuously deploying small change sets enables us to build and release robust features all while serving over a billion page views per month. In order to make sure we can keep up this pace, we have development and deployment infrastructure in place that makes it comfortable and simple to make changes. So simple that as an engineer at Etsy you deploy the site on your first day - even if you're a dog.
But how is it possible to deploy so frequently among so many engineers and yet maintain a stable system? To answer this I give a high-level overview of the basic application structure to introduce the specific architecture we have at Etsy and how our development environment is set up. For development, every engineer gets their own VM with the full application stack configured. This makes it easy to get started and puts every developer in the same, familiar setup. This is a crucial part in removing confusion and ambiguity about how to work on and deploy changes.
For the actual deployment we use a one-button deploy system - Deployinator - which we developed and opensourced. We integrated our system tightly with our company-wide IRC server and a set of tools we built to foster confidence, fast feedback and easy communication and collaboration between engineers. A detailed overview will be given on how the system works, how we use it and what problems we had to solve while making sure everyone can deploy as easily and fast as possible.
The central source of confidence in our development process is our CI system. We have developed an easy way for developers to run tests on the CI cluster while developing to test changes before going into the deploy pipeline. Additionally tests are run on deploy and initiated by engineers with a tool called 'try' across 200 build machines. Our cluster setup is explained along with what problems we hit with an ever-growing codebase and number of engineers, and how we made our current setup fast.
Continuous Deployment and the ability to quickly make changes are crucial for moving fast and iterating on products. Our deployment system works very well and is keeping up with the demands of a growing site and team. After attending this talk you will understand exactly how we approach Continuous Deployment and Continuous Integration at Etsy and get insight into what went wrong along the way and how we fixed it.
Daniel is a Software Engineer in Etsy's infrastructure and development tools team. Automation, documentation and simplicity are his usual tools for improving the status quo. He previously worked in systems and network administration, on connecting chemical plants to IT systems and as an embedded systems networking engineer. Things he thoroughly enjoys when not writing code include coffee, breakfast, TV shows and basketball.
The BrandsEye team have spent the last year or so transitioning from a single monolithic application with serious performance issues into a loosely coupled collection of applications able to handle very much higher volumes at far greater reliability. The new system uses a lot of interesting technology (RabbitMQ, Redis, MongoDB, MySQL, Postgresql, Grails, Java, etc.) to solve various real-world problems. In this talk David goes into detail on the challenges and learnings encountered along the way.
David is CTO at BrandsEye, the online brand monitoring and analysis software. BrandsEye processes large volumes (3 million+) of tweets and other brand mentions every day, contextualising and annotating them with sentiment, credibility and so forth.
The performance of your application affects your business more than you might think. Top engineering organizations think of performance not as a nice-to-have, but as a crucial feature of their product. Those organizations understand that performance has a direct impact on user experience and, ultimately, their bottom line. Unfortunately, most engineering teams do not regularly test the performance and scalability of their infrastructure. Dustin Whittle shares the latest performance testing tools and insights into why your team should add performance testing to the development process. Learn how to evaluate performance and scalability on the server-side and the client-side with tools like Siege, Bees with Machine Guns, Google PageSpeed, WBench, and more. Take back an understanding of how to automate performance and load testing and evaluate the impact it has on performance and your business.
Dustin is a Developer Evangelist at AppDynamics where he focuses on helping organisations manage application performance. Before joining AppDynamics, Dustin was CTO at Kwarter, a consultant at SensioLabs, and developer evangelist at Yahoo!. He has experience building and leading engineering teams and working with developers and partners to scale to meet demand. When Dustin isn't working he enjoys flying, sailing, diving, golfing, and travelling around the world.
Creating fast, reliable and easy to develop systems is not the easiest task. If you add the fact that thousands of companies use your system as a core business platform on a daily basis, it becomes challenging.
Add a flavour of a scalability and millions of users and it moves on to exciting. How can we prepare a system that might be affected by scalability issues everywhere, even in the simplest component?
The answer is to dive deep into the world of services. We decided to prepare a strong base on top of which we can build our system. Our choice was to start with the Java stack. We've gathered all the cool stuff from open source projects to create a bootstrap to let our developers create scalable services really fast.
In this talk I would like to focus on the choices we made, and the ecosystem we built over our services. It is not only about the code we write, but also the tools that make our life easier. We will look at frameworks to provide REST services, and see how to make them auto discoverable. We will also discuss tools to let us monitor and manage all the instancesi we run. If you want to create or upgrade your service to scale it is the best place to start.
Krzysztof is a technical enthusiast, software engineer and product owner of Service Bootstrap developed in Allegro. Gained software experience in the biggest Polish web companies – Onet.pl and Allegro.pl. He has a lot of experience in designing and building modern, scalable web systems. He is open to all new technologies an programming languages, and he has no fear to work on legacy systems and rewrite them in modern way.
It has never been easy to turn your ideas into a real scalable business, but these days, with the rise of the tech incubator, it seems like it's something that everyone is meant to be doing. This talk hopes to provide some insight based on real-world experience from someone who has tried and failed a number of times, and in 2012 decided to try again right here in Cape Town. Inspired by last year's ScaleConf, he'll tell us how On The Way (a service run by Western Cape Labs) went in six months from an idea to a thing you'd hopefully happily send your mum to.
Mike works at Western Cape Labs, which he helped form in 2012. He calls himself a "jack of all trades, master of some", which really just means he has to make his own coffee (and likes to shout "MARKETING" randomly at conferences). Born and raised in London, but now resident in Cape Town with his growing family, he appreciates all that the city has to offer as an awesome place to build a socially valuable business.
In 2012 two small teams set about delivering on massive expectations, on "failure-is-not-an-option" projects, with extraordinarily limited time and resources. Both teams nailed it: every space geek in the world saw the Mars Curiosity Rover's first images live from Amazon S3 and Cloudfront and watched an HD live-stream of the event, and the 170+ custom applications on AWS powering the radical Obama for America campaign played no small part in helping President Obama win his bid for re-election. Miles Ward, your presenter, worked embedded within these teams during the design, development, testing, deployment and operational phases of these projects, and can relay a few critical insights about the use of cloud at this scale. 100,000 WCU DynamoDB tables; replicating 27TB across the continent; 60+ terabit/s of live-streamed video; over a billion dollars in processed donations; hundreds of instances, 528,000 IOPS, oh my!
Miles is a three-time technology startup entrepreneur with a decade of experience building global-scale analysis infrastructures. Miles has been at Amazon Web Services since 2010 and is responsible for designing and developing AWS Solution Architectures relating to big data and social analytics, multi-tiered storage, HA and DR approaches for RDBMS systems, and cost optimisation.
Lessons learned and approaches taken in scaling Facebook, keeping product development fast and a billion people who use Facebook every month happy with the reliability and performance of the site.
Neil is a Production Engineer in Facebook's Core Systems team where he tries to make the infrastructure that powers Facebook's infrastructure more reliable and operationally efficient. Previously he was an early employee and lead engineer at South African startups KnowledgeTree and Yola.
Spotify instantly streams music to more than 24 million users, on many different platforms, from a catalogue of more than 20 million songs. What goes into doing this? And what are challenges to maintain this with an ever growing user base, in many new places around the world? In this talk, we'll describe how the audio playback pipeline at Spotify is built and optimized. It will cover a wide range of areas involved, from how the clients work to the storage solutions that backs it all.
Niklas is a backend engineer at Spotify, open source hacker, mountain biker and father of two awesome kids. At Spotify, he mostly works on the audio pipeline. Niklas keeps a badly updated blog at http://protocol7.com
Robert will tour through Cognician's new architecture and ops infrastructure, which leverages the many advantages of Clojure - such as functional programming, immutable data and deep Java interop - and Datomic, a new database engine from the creator of Clojure, which solves many of the common data-handling concerns when scaling web applications, so that scaling is far more simple to reason about and accomplish. slides: https://speakerdeck.com/robertstuttaford/cognicians-new-architecture-with-clojure-and-datomic video: KlDJy3yXVsc
Robert is the CTO at Cognician, a local tech startup working on improving people's thinking. Now, going into its fourth year with a brand new, completely re-imagined technology stack, Cognician is providing value as a digital platform for self-coaching, performance support and much, much more.
Robert has been coding for 15 years and is still not dead. Having worked in all facets of web development for a wide variety of use cases and people, he is happily astonished at how much fun he's still having, thanks in no small part to the Clojure language and its philosophy and community.
Concurrency is fundamentally at the base of scaling. How do you manage to do more things at once? Well, you do them at the same time. This opens a huge can of worms though, because every different approach to how you do this has disadvantages, weaknesses, problems and tradeoffs. I will go through some approaches to concurrency that I've come across, speak of common building blocks and issues that these approaches all share. I'll be mentioning things like the c10k problem, threads, actors, evented programming, interacting with IO, futures/promises, coroutines and more. Far from being a world-renowned expert on the matter, I will attempt to dissect these patterns and styles because I want to understand why they "scale," problems you can run across, and when (pun intended!) it can drive you crazy. Hopefully by the end you will find it somewhat easier to understand and grasp, and have a newly driven passion to dig in further.
Shai is always excited when there is something new to learn, and hence has seemed to have found his fit doing technology. He started out playing with Ruby and Rails over 8 years ago. After helping scale and support some of the largest Ruby production systems around, he moved on to engineering in one of the leading Platform as a Services (PaaS) companies. Shai enjoys solving problems, facing new challenges and playing jazz standards when he's not finding out something new on his laptop.
Astronomy is one of the most scale obsessed of all the sciences. From our earliest attempts to understand the size of our planet through solar observations, through to our current appreciation of the ultimate scale of the universe, it constantly redefines our notion of "big".
This escalation in scale can also be seen in our observational instruments, particularly in the field of radio astronomy. We are entering an epoch of massive expansion in observational capacity, which over the next 10 years we will see an 8 order of magnitude increase in the data volume being generated. This talk will focus on these instruments, their challenges, and what they will mean to the science of astronomy.
Simon started out life as an astronomer, used to be an engineer, and is now trying to avoid managerial tasks. Currently in charge of scientific computing for the MeerKAT radio telescope (www.ska.ac.za), he spends a significant amount of his coding time trying to avoid writing C, and the rest of the time trying to use sys._getframe() in ways that annoy his colleagues.
Patrick Turley, an ex radio DJ now software developer will take us through the evolution of scaling testing on a software project as he has seen it over dozens of enterprise software projects. He will discuss techniques and tools for different languages, all projected through a mixed tape that he made for this conference.
Patrick is a Lead Consultant and Software Developer from the ThoughtWorks Johannesburg office. He focuses on helping IT organizations become nimble and reactive in meeting their customers' needs through pragmatic improvements to the way software is developed and taken into production. Patrick has worked in 10+ programming languages professionally with over a dozen different clients. He specializes in agile engineering practices and modern software development techniques. Patrick has worked in many different statically typed languages, but his current passion is with dynamically typed languages like Ruby and Python. In his spare time Patrick enjoys playing the drums and harmonica.
Product and Business Strategy
Lessons learned while scaling one of Africa's largest social networks without funding and with no sleep: what we've done well (and done badly); what we've learnt and what we still need to learn.
Peter is responsible for product strategy, business development and general getting-things-done at 2go Interactive. His background is in the ISP industry, networking, internet security and systems architecture. His interests lie in producing excellent products and in growing great companies.
Founded in 2008, 2go has grown to more than 10 million active users across Africa, principally South Africa and Nigeria. As a mobile social network with 30,000 new registrations each day, scaling is the principle challenge of running 2go - both in terms of technology and growing a self-funded startup.
For more information on sponsoring at ScaleConf, or if you would like to ask any other questions, please get in touch with us via email, or find us on social media.
© ScaleConf 2017