For the past three years, I’ve worked as a Database Engineer—in other words, as a database developer—at ChannelAdvisor. 2 1/2 years of that time was spent working in the digital marketing space. Coming into this job, I had worked at small-scale organizations: the smallest cabinet-level department in Ohio, followed by a relatively small subsidiary of a large insurance company. Working at ChannelAdvisor helped me build up skills as a database developer, figuring out that things which work well with a hundred thousand rows in a table don’t necessarily work well when that table hits a billion rows.
Well, come January 1st, I will no longer be a Database Engineer. That’s because I’m going to be the Engineering Manager of a new predictive analytics team.
Yeah, this feels a little crazy for me as well. The me of five years ago would never have wanted to be a manager, and the reasoning would have been the same as for other technical people: I enjoy being on the front line, doing things rather than filling out paperwork.
Since then, I would not say that my priorities have changed much: I still want to be on the front line, using technology to solve business problems. What I get, though, is a force multiplier: I now have two more people who can help me accomplish great things.
Something I’ve observed during the last few years of work is that we have a tremendous amount of interesting data at the company, and we throw away even more due to space and budget constraints. What we have not been so good at was taking full advantage of that data to help customers. Most of our systems are designed around a single customer’s data. Obviously, our transactional systems are keyed toward individual customers, rather than aggregating their results. What’s interesting is that even our warehouses tend to be customer-focused rather than company-focused.
My vision on predictive analytics is to blow out our company’s disk budget.
It is also to take advantage of this data and solve problems for customers, between customers, and for the company as a whole. We have the data, and it will be my job to put together the tools to collect (in a place which does not harm our transactional processes), process, aggregate, and analyze the data. Without getting into specifics, I want to close the internal gap between what we could conceivably do versus what we can do in practice.
Plan of Action: Data Engineering
In order to pull off my vision, I’ve got to build up skills on a number of fronts, all at the same time. There are four major quadrants I need to hit; the good news is that I’m building a team to help me with two of them. I’m going to start with the Data Engineering Crucible, in which I (hopefully) take people with complementary skills across the following three axes and build up people with strong skills across all three.
Doing a few analytics projects has reminded me that I need to re-take some stats courses. My last statistics course was in graduate school, and that was mostly statistics for economists, meaning lots of regressions. I’m bringing in an employee who has a pretty strong background in this, and so I plan to lean on that person pretty heavily (and push that person to get better at the same time).
My .NET skills have stagnated the last few years. That makes sense, as I don’t write as much .NET code as before. The good news is that by hanging around the .NET user group and working on projects both at work and for presentations, I haven’t forgotten much there. I also want to have my other employee bring in a strong development background to help the team get better.
Aside from .NET development (F# for life!), we’ll use other languages too. I have some experience with R and Python, and that experience is about to grow significantly. I have a lot of experience with SQL that I will share with the team, as well as some Java/Scala experience and whatever other crazy languages we decide on.
Subject Matter Expertise
I’ve worked on digital marketing for the past 2 1/2 years, but that’s only a part of what the company does. My job will be to work with my team to train them on DM but also learn more about the rest of the company’s data and processes.
Plan of Action: Management
Aside from hitting the Data Engineering trifecta, it’s time to ramp up management skills. I have some ideas, and I’ll probably share more as I do a bit more. Right now, it involves reading some books and thinking through various plans, like how I want to run meetings or drive sprint work. After a few months, I hope to have a post up which describes some of this and see how things work out.
Over the past year, I have been itching for a team lead position. Now that I have it, I’ll be like a dog with a chew toy, though probably a little less destructive.