Open-Sourcerer of the Month: Apostol Tegko
Apostol has led and created data teams at multiple startups and is currently building out the data strategy for all parts of Fnatic.
Every month, we feature an individual who has stood out in our community as a notable contributor or user of Plural. This month, we’re featuring Apostol Tegko, Data Lead for the Tier 1 esports organization, Fnatic.
Apostol has led and created data teams at multiple startups and is currently building out the data strategy for all parts of Fnatic’s business and stack. I was super psyched to get to chat with him about his experience and plans for the future.
What is your history in the data industry?
I’ve been involved with startups since the beginning of my career. I’d say that the vast majority of my data exposure came from a company called Weengs. We were doing first-mile logistics, which is nonstandard work for data work, but a lot of the work there was related to operational efficiencies and things of that nature. I spent three to four years looking at operations, collections, and our drivers.
We made a lot of optimizations around our fleet and how we deliver. I joined pretty early on, so I got the experience to do all sorts of things. From there, I joined OYO, as they were expanding in the UK. I joined as the first data hire in the UK, it was a huge company at the time in APAC; they were a hotel chain franchising system.
We did lots of interesting things with the dynamic pricing of the hotels, and what we built at the time was being rolled out globally. Joining as a first data hire at Fnatic was similar, it was almost like a recurring theme to get businesses set up to succeed with their data.
Those are some wildly different industries. What’s the same and what’s different with data ops in different sectors?
Fnatic is very diverse. It’s essentially an e-commerce, gaming, and giant social media agency. So when you look at all of it, the common thing across all sectors is building curiosity to ask questions and getting access to clean data.
The one that differs the most is hospitality data because in general, you're dealing with time series data that relates to the future and past, people are buying future stays instead of consuming something in the present.
Other than that, it's fairly similar. You're always dealing with optimizing for transactions, and data culture within an organization, and ultimately you're trying to be an enabling function for all of these areas that are trying to make use of data.
What is a good, healthy data culture?
You need to have easily accessible data sets and trivial ways of providing access to quick insights at the same time. You model data and make it viewable with a BI tool. The majority of the long tail of questions should be self-answerable.
Essentially, you want to make sure that the key people in every function are comfortable with getting access to the information. From there, it's almost like a snowball effect. Those key people will serve their function with their expertise and will pass that knowledge on very well.
We're lucky because when you look at the culture developing internally within our reporting system, we are observing that our employees are mostly viewing their user-generated content. People are saving their dashboards and viewing their custom dashboards, which reflects a successful data culture.
Are you worried about people misusing the data?
There's no need to educate people to not make mistakes because the data is accessible and clean to a degree where it's tough to make mistakes. For example, our e-commerce setup is complex and spans multiple Amazon stores and wholesale stores.
Still, people can find out what's going on with particular verticals from a global view and we don't need to get involved with how people are accessing that information. At Weengs, everyone was looking at the dashboards to optimize all of their operations. They wanted to be prepared for everything that was coming their way.
The key difference is education, and getting people on board. If people are motivated and aligned with what you're trying to accomplish, they will opt into education.
Game-specific data has been around for a while, but it feels like it’s still too new for there to be clear industry standards. How do you all approach this?
First off, there were always third parties trying to help with specific data of games. About a year and a half ago we wanted to do this internally. We were lucky because when the problem started to form, we wanted to do a multi-game approach. We could see parallels across all the different game titles.
There are different areas though - there's the athletic part of it, routines, and physical health of the players. There's the other side, which is the in-game performance - this is what we've spent the majority of the time focusing on. We are finally getting fruit out of this; we spent a lot of time theorizing what success looks like here. We validated our theories and to be able to execute them in production properly, we needed to scale beyond what the business demanded of our data infrastructure.
When you think about in-game performance, you're trying to be faster than the opposing team in understanding what are the best strategies in the current game state, known as the metagame. You're trying to optimize your operations. Additional value comes from trying to harness positional analytics, which is more advanced than just data available from public spreadsheets.
When you look at what we put together for League of Legends, we've ingested the data of every single game that matters. There is a public-facing API for the ranked ladder, and we're getting a chunk of that from the higher ELO. There are more structured data sources from Riot, and we get licenses from them to access them.
When you look at those data sets, you are dealing with a lot of events. Every single action that happens in the game has its structure. There's also the map state, for every location of every character with every part of their game state, cooldowns, gold, buffs, and status conditions. This is up to every second... which allows us to get creative. We pulled in over half a terabyte for public matches for the last 3 months, and close to another 0.5 TB for training matches, which requires us to have an answer for scaling.
What’s your favorite thing to do in your free time?
Following our valorant team, it's been amazing. I try to disconnect as much as possible - traveling, short trips, and if I get time I get to play some League of Legends. I've been playing around with Cube.js - the concept of data as a product is interesting. The majority of the time, with anything non-consumer based, you're dealing with various representations of data and you can be more agile if you're consuming from a data stack.
What's the weirdest fact about you?
I've never finished high school in Greece and was going to drop out of college. I made an application to the college, and I managed to get into university. I already started working, and I was learning way more at work than at university, so I wasn't sure that it was worth continuing.
To learn more about how Plural works and how we are helping engineering teams across the world deploy open-source applications in a cloud production environment, check out our Github to get started today.
Join us on our Discord channel for questions, and discussions, and to meet the rest of the community.
Be the first to know when we drop something new.