After finishing a PhD in Computer Science from University of Waterloo, architecting systems at several startups, and developing modeling tools at Two Sigma, CTO Steven She is now building a world-class engineering team at Alkymi. Although the pandemic has thwarted his social streak and wanderlust, these days he maintains his sanity with a healthy balance of running and mixing cocktails.
What's exciting about Alkymi’s mission?
S: I’ve worked at multiple early-stage startups and large financial services firms, and I love the challenge of building a product from the ground up and the mission to improve how people work every day.
It’s fascinating that most work in companies still gets done in email and documents, even with huge advances in technology, apps, and data processing. We’re tackling this problem, using ML to transform how business users get data unlocked and take actions on their data.
I love working with a small team and the experience of being able to build a system end-to-end. You realize you don’t actually need a team of a hundred people—you can build faster with fewer people. It’s a very collaborative process, and the product constantly evolves. The biggest benefit of a closely knit team is faster decisions. We’re often able to release features to users the same week. There’s something that’s really empowering when you work with people that share that same passion for the product.
What are some of the engineering problems you are solving for in delivering Alkymi Data Inbox to enterprises globally?
S: One thing that has stood out to me working on this problem, is that we're unique in using ML and automation, so it’s easily understandable for a business user and gives them more control.
When you look at an infrastructure-as-a-service system, they all have tool kits of different services to compose a system. However, all those tools are very focused, and they don't solve the larger problem of business users and their workflow. How can you connect these technologies so that they’re useful for the end-user when they do their work? How do you build a product that leverages the power of those tools, but makes it accessible and easy-to-use? And let’s not forget, always meeting the stringent security, compliance and privacy demands of our customers.
Instead of tools, our approach has been to build an end-to-end product to let business users automate the process of building models, training models, and validating data with automation. Working on a tech stack that's modern, robust, and proven—that’s really exciting!
Do you have any early lessons to share from deploying no-code / low-code functionality to customers?
S: We’ve built such a powerful self-service tool, and I'm always curious to see what our customers will build with it. One of the product lessons so far, is a constant focus on making it easy and simple to enable an automation job for our end users. We need to trust that our customers want a powerful tool and see what they can produce on their own. And we’re in constant contact with our power users to learn about their use cases and the right features to build next.
Our no-code product has enabled us to give users a great experience with automation right out of the box without waiting for training. As users become more familiar with our platform, they can dive deeper into more powerful abstractions and automation rules that enable them to build automation jobs that suit their particular needs.
You can't just hand off this giant toolkit of 100s of different operators to a customer. Instead, we're learning that many tools serve the same purpose; we can narrow them down to a more manageable and logically composable set of operators. This is what I find particularly exciting about where we're headed.
No-code has allowed us to give users something that's composable, well-defined and very powerful.
How did you decide on the tech stack and architecture for Alkymi’s product?
Let’s say, “powerful simplicity.”
While the current tech stack uses a lot of the latest ML packages, at the same time, it's very boring—in a good way. We’re using technology that's proven. Django, Celery, and Python are our main programming languages on the back end because we believe a common language is one way to communicate effectively across different teams.
When the backend and data science teams understand the same languages, we can get things done quickly. Further, using Python allows us to have access to some of the most powerful ML libraries, so they can easily integrate into our system.
When it comes to the enterprise, support of open standards is critical for integration. We want to be a platform that enables us to not only plug into those systems and work with customer's workflows, but also to enrich them with the value we provide.
What’s a typical day at Alkymi like for the engineering teams?
We kick the day off with a daily standup with the entire company on, and we sync between teams, then break out into breakout groups. Scrum boards are updated, and we use them to communicate our progress and update our teams. Sprints run over two-week intervals, and we close out with ‘Sprint Demos’ where we all get the chance to demo and show new features to the entire company. It’s pretty unique to get instant feedback from Product and Sales on how our customers will use it—it's a bit of a celebration! Every other week we have some fun as a team, we have game time, and we’ll sometimes compare notes on the Universal Yums box where we all get exotic snacks from around the world each month.
With all the new customers we’re onboarding, we’re continuing to invest a lot into our DevOps processes. We use the git-flow feature development process and have continuous integration (CI) and testing across all our repositories. Once a pull request is merged, the CI pipelines build new containers and immediately update the deployment on our staging environment. Deployments to production are controlled by a simple GitHub pull request from the staging to deployment branch in this repository. We use GitOps for maintaining our Kubernetes deployment manifests, so all changes to our staging and production environments are in source control. This ensures that all developers have visibility into deployments and reverts can be made directly in GitHub.
On a typical day there’s a lot of collaboration with other teams, especially data science. We often meet on client projects with product, solution architects, and sometimes directly with the clients (my favorite meetings).
What are the qualities you feel are important for people who want to join Alkymi? How does Alkymi’s culture benefit the work of the engineering team?
S: One of the great experiences working at Alkymi is that everyone feels that they’re in it together. Knowing we're all working hard and at our best, we rely on and learn from each other.
At Alkymi, we’re a more mature team, there’s true support and caring for one another, a real compassion that goes beyond just the work relationship, which is unusual. For example, this past year has been extra hard for our employees with kids and we continue to give flexibility around the many unforeseen personal commitments that crop up.
Also, curiosity is important. A deep interest in technology for building systems, or learning more about architecture and all the different aspects of software development. All these are important to how our engineering team works, and we want to bring people that are curious onto the team.
What’s your take on fully remote vs. hybrid working in-office and from home?
The hybrid/working in office model is probably best, but when it's safe to do so again, returning to the office would be great. I think we've learned a lot about how to communicate with one another by being full remote in the last year, that I'd want to keep some of that ability to work from home some days. I think a hybrid model where some could be full remote, while those who are local can come in without having a strict 5-day work week in the office, is a good balance. While we’ve proven remote can work, some of the best ideation happens when we’re together over a whiteboard face to face; it’s an important part of collaboration that’s almost impossible to replicate with videoconferencing.
Tell us about any new ‘quarantine interests’ you’ve picked up in the last year?
Well, I took a pottery class for the first time. There's a studio near me that started running classes again. Really small classes, but I sat at the potters' wheel, just modeling clay. And no, Demi Moore wasn’t there!
Also, I recently got a kit to make gin. I have all the botanicals to make a custom-made gin where I can mix all the right infusions to taste. And like everyone else, I’m looking forward to getting the vaccine very soon and life finally getting back to some sense of normalcy!
Interested in joining the Alkymi technical team? We're hiring.