“Working at the Heart of the System”

ActionIQ
ActionIQ Tech Blog
Published in
4 min readOct 17, 2023

--

From the keyboard of Yannis Tzemos, Software Engineer

Hello, my name is Yannis and for the past 4 years I have been a member of the ActionIQ team. Currently, I am part of the Engineering Organization but my journey at the company started on the Professional Services team. Over the years, I have held the positions of Data Engineer and Software Engineer which at ActionIQ have a unique way of complementing each other. Both roles have given me the tools and the opportunities to grow to be successful in my current role on our Execution team.

Execution is a long-standing team at ActionIQ. Our responsibilities include the shared and auto-scaling Apache Spark clusters. Actionites like to refer to these clusters as the “heart of the system”. The clusters are used on a daily basis to execute a number of Spark Applications (~85k jobs a day) and process vast amounts of data (~750TB read per day) that power the functionality of the platform. Consequently, me and my team have the opportunity (as well as the responsibility) to develop scalable-robust solutions that are on the critical path for the rest of our fellow engineers. While I can’t speak for them, one of my favorite tasks is to attempt to optimize complex data models that our customers introduce into our system and stress its limits. It’s a unique chance for me to utilize the full breadth of my knowledge and at the same time learn something new that often becomes a part of our system. ActionIQ engineers have a high regard for learning opportunities and this is something that definitely applies to me as a person and an engineer. Working on our clusters’ resiliency, throughput, latency and (of course) cost has been and is one of the wildest and most unique adventures of my tenure at ActionIQ.

Catching up with our CPO and members of the Product and Professional Services organizations at Social Hour.
Catching up with our CPO and members of the Product and Professional Services organizations at Social Hour.

Having said that, the current project that I am working on poses a new set of interesting challenges. Hybrid Compute, is a new way for us to extend our platform’s capabilities, make it more composable and at the same time alleviate some of the clusters’ computational workload. Still though, the clusters are at the heart of it all! This new set of problems is a fun and engaging experience that allows me to wear many hats. For example, my week may include: writing code to extend Spark’s capabilities, interacting with different Cloud Warehouses APIs, and learning their individual characteristics. For me these are just some of the perks! Working through the ways these technologies can integrate with our current system seamlessly, is of course, a challenge. Having the support of my team and the guidance of my tech lead Mitesh, is a privilege. All of these components foster a holistic experience of being an open-minded problem solving engineer.

Strategizing with my colleague Chi on our Hackathon plan for last spring’s hackathon. Our project was called “Forever Chunk” and we won 3rd place overall!
Strategizing with my colleague Chi on our Hackathon plan for last spring’s hackathon. Our project was called “Forever Chunk” and we won 3rd place overall!

As you may have noticed by now, my excitement hasn’t deteriorated over the years; the main reason for this is the complexity of the problems we are solving — real big data use cases, with tangible customer impact! More than that though, being a member of a team with such high stakes (remember, “heart of the system”) creates a sense of responsibility like no other. For every project or incremental fix, my team’s focus is always on quality and resiliency: principles shared across the Engineering Organization and the company. Furthermore, there is great attention to detail and testing. Characteristically, another one of my favorite tasks is to write a detailed testing plan that encompasses the ways my changes interact with the current system. It gives me the opportunity to keep up with all the new features and advancements we introduce in our platform.

ActionIQ has given me the space and the opportunities to grow as an engineer and a professional. The Execution team (and every team I’ve been a part of throughout my tenure) has created an environment where I can challenge myself and constantly absorb and learn new information. Based on all of the above (and more), I continue to be excited for things to come and systems to build!

Yannis Tzemos is a Software Engineer at ActionIQ working on maintaining existing, and building new features. He enjoys working on complex problems, distributed systems and engaging in stimulating system design discussions. In his free time, he enjoys walks at the amazing parks of Brooklyn, traveling, and good coffee.

ActionIQ is a leader in the massive and fast growing category of Customer Data Platforms (CDP). Our product brings order to customer experience (CX) chaos. ActionIQ’s CX Hub empowers everyone to be a CX champion by giving business teams the freedom to explore and take action on customer data, while helping technical teams regain control of where data lives and how it is used. We are backed by top-tier VCs Andreessen Horowitz, Sequoia Capital, and March Capital. Enterprise brands such as Autodesk, Bloomberg, The Washington Post, Hertz, Atlassian and many more use our CX Hub to achieve growth through extraordinary customer experiences.

Learn more at https://www.actioniq.com/

Read our product blog at https://www.actioniq.com/blog/

Explore our career openings at https://www.actioniq.com/careers/

Want to get in touch? Contact us: https://www.actioniq.com/contact-us/

--

--

ActionIQ
ActionIQ Tech Blog

ActionIQ is a new kind of composable customer data platform for enterprise brands who want to grow faster and deliver meaningful experiences for customers.