Our Engineering Demos stemmed from a simple question — “How can we share knowledge among our engineers better?” All of our engineers were working on different, complex products, but they usually had knowledge that could help each other out.
For example, we didn’t need to build completely different front-end and backend developer workflows, or unique infrastructure for Collect (our mobile data collection app) and our data engineering pipeline. What one team had previously done could often be adapted to another team’s problem, but that was only possible only if the other team knew about it. Similarly, one team member didn’t need to Google basic Regex expressions when there was a Regex expert sitting one table over.
However, it was all too easy to get stuck in our own work, not knowing that someone else had already tackled what we were struggling with. One engineer might come up with a great solution, but their solution wasn’t being shared with the rest of the team.
Solving this was a huge priority for us. We realized we couldn’t move forward and solve even bigger engineering challenges if we were stuck solving the same old challenges over and over again. We started by documenting our problems and how we had solved them, but we eventually realized this just wasn’t enough. Reading documentation can be a drag, no matter how fun we tried to make it.
A thought popped into my head — what about engineering demos? SocialCops had already seen some success with our company-wide demos, where each team shows off its recent work, gives learnings and best practices, and crowdsources suggestions for how to deal with its challenges. Perhaps engineering demos would create a common platform where engineers could share their knowledge in a more enjoyable, lasting way than dry documentation. And that was where the tradition of SocialCops’ Engineering Demos was born.
To share documentation better, we set up Airbnb’s Knowledge Repository. Read about how we set it up, complete with code snippets to help you get started!
The goal of these demos is to help engineers learn from one another. Demos happen once a month, and they give engineers the chance to share their work, learnings, and best practices with fellow engineers.
After coming up with the idea, I had to create a structure. How would these Engineering Demos actually work? How would engineers share their learnings and take away the lessons they needed? How many sessions should we do? How much time should they take?
Taking inspiration from how conferences are run, I settled on two types of slots: 15 minutes and 45 minutes. Engineers could sign up for a slot to talk about…
- New features they built inside one of our products
- New technology they used to solve an engineering problem
- New processes they set up to improve their engineering productivity
- Anything else that would help their fellow engineers improve their daily work
After a few weeks of planning and build up, we kicked it off on 18 July with our very first Engineering Demo. We were excited to hear sessions from a range of engineers, new and old alike, from different internal teams.
Product Roadmaps: Data Engineering & Frontend
We kicked off the Engineering Demo with product roadmaps to make sure that everyone knew what we were working on, where we were going, and why that was the right direction.
Gaurav from our Data Engineering Team talked through the problems the team was facing and how they planned to solve them. The session touched on everything from data extraction, storage and management to team changes, like new infrastructure and new blogs in progress.
Bharat then took over to talk through the Frontend Engineers’ road map. He explained what the team would be doing for existing products and projects, new features they’d be building, and some experiments they’d be running. He even introduced a brand new Kanban board so anyone could check out the team’s progress on a daily basis.
Next was a short session to explain an upcoming redesign of our data collection app, Collect. It started — as the best demos should — with data on the problems our users and team were facing, followed by how our redesign would solve these problems.
Next was an engaging session from Nishant on how the Frontend Team is scaling up its workflow. With gifs and Game of Thrones references, the session was fun, but it also gave us insights into how we should be thinking about our engineering workflows.
Did You Say Kubernetes?
Our Data Engineering Team recently started using Kubernetes to automate the deployment, scaling and management of our containerized applications. Akash took some time to explain the developments that led to the rise of Kubernetes, one of the most popular open source projects ever, and why it’s just right for what our team needs.
Akash turned this demo into a blog about the history of infrastructure and containerization. Check it out.
Doing Regex the Right Way
Adwait closed off the demo with an introduction to Regex. He used a live demo to build from basic expressions to long, dense expressions that intimidated even our most seasoned engineers. The session was completely interactive, with everyone joking about the weird quirks of Regex and competing to figure out why each expression worked the way it did.
Adwait’s last blog talked about why everyone should care about Android localization, and how you can localize string resources. Check it out here.
Onward and Upward!
Our first Engineering Demo was undoubtedly a hit. Our room was overflowing with engineers (and even some non-engineers) who were eager to ask questions and learn about their teammates’ work. The takeaway was immediately clear — we needed to keep this up. We quickly started making plans for the next Engineering Demo, which just happened yesterday!
Engineering Demos are still fairly new at SocialCops, but we’re excited about the way they’ve helped our engineers come together even closer as a team. They’ve helped us understand what is being built across the company, what challenges we’re solving, and what we’ll be taking on next. They’ve also helped us cultivate a better engineering culture, focused around sharing best practices to help us build a better global product. And finally, we’re thrilled to see them become a platform to help all our engineers work together to grow and reach the next level of skill that they’ve been waiting for.
Are you someone who loves solving big engineering challenges? Our Engineering Team is looking for the next team members to join them in solving some exciting problems. Check out our Careers page for much more information!