Episodi

  • Show Notes

    Topics: Career Advancement, Code Schools, Computer Science, Education, Internships, Interviewing/Interview Questions, Onboarding, Personal Branding, Recruiting, Recursion, Software Engineering, Web Development

    Companies and Organizations

    Thumbtack Braintree Bucknell University Free Code Camp

    Introduction

    If you are thinking of going into a career in software engineering in the late 2010s, you have to navigate an abundance of choices and answer a lot of questions. Traditional Computer Science education or code school? Big company, medium or small? Startup on a cloud stack or mature company on an enterprise stack? Should you favor employers based on salary, learning opportunity, perceived caliber of colleagues, or fast growth? How to build up a portfolio? Taylor Milliman has just gone through this process and started his career. In this special two-part episode, we talk to Taylor first just before he starts at Thumbtack as a software engineer, and then get an update from him six months into his time there. What did Taylor expect from his first software engineering job, and how has it actually turned out so far? Find out in this episode of “Using Reflection.”

    Guest Bio

    Taylor Milliman is a recent graduate of Bucknell University where he double majored in Chemical Engineering and Computer Science. Before starting college, Taylor had no idea what he wanted to do with his life. He ended up falling in love with the tech industry, learned to code, and eventually landed an internship at Braintree. He wrote about the whole story here, which was later republished in The Observer. Now, Taylor works as a software engineer at Thumbtack on the marketplace team. Outside of work, he enjoys hiking, snowboarding, cooking, reading, writing, mushroom hunting, coding, coffee, and so much more.

    Links

    Blog: Taylor Milliman Github: Taylor Milliman Twitter: Taylor Milliman Breakout List - Great Companies to Apply to Lambda School Recursion Chemical Engineering Sunk-Cost FallacyTranscript

    Taylor Milliman
    It’s kind of just a means to an end. Whereas like now there, there is like if you put in the effort it’s, it’s pretty easy to to quickly like upgrade that and get stuff that your interested in. I think like “What kind of things do you think you can get that, that weren’t available? Sort of pre social media?” I would say I like, I mean it’s, it’s still hard, but like you, I mean it’s still true that if you just cold email like 10 people that even if they’re pretty busy people almost certainly one of them will respond and then you just don’t know what that will lead to that’s interesting.

    Host
    So I had one boss who told me, “You should also take any conversation you’re offered because you just don’t know what could come of it.” And it took me, I think many more years of working than you’ve been done so far to kind of realize that. That makes a lot of sense. So you’re basically just talking about it’s always worth trying to network, right?

    Taylor Milliman
    Yeah. Or even just, just like, I think of it more as just like making friends with people, but because like the truth is I mean like when I reached out to you, I didn’t want anything from you, you know, I’m not looking to get anything probably. I’m just looking to meet interesting people more so. But I think, yeah, it’s always worth trying to meet interesting people and then if you’re not like looking to get anything per se, it’s more just to learn what you can learn from that person. And I think it’s just like fun talking to people who, who like to think. That’s, that’s really honestly mostly what it is.

    Host
    Oh, and communicate too though, right? One thing I think that’s interesting about this way things are now where it puts people who are less adept or comfortable at communicating probably even a more of a disadvantage. I mean this, this used to be a profession where to some degree you could hide out if that wasn’t your thing, you know what I mean?

    Taylor Miliman
    Yeah. I mean maybe, but at the same time I also feel like in some ways it doesn’t. Because you can, if you are doing interesting stuff and you just put it out there, people will reach out to you. Which is just crazy. I mean, there’s really no downside as well because I think even if no one reads it right, you almost certainly kind of clarified your thoughts on that subject in order to do that.

    Host
    That’s definitely true. Like having to explain it to someone else. Right. Interesting. So anyway, thanks for reaching out at and here we are. Right. So that’s what came out of that, that that’s how it was. Interesting. I was the one out of the 10 that did answer. I guess at this point welcome to the show. Hello and welcome to “Using Reflection”, a podcast about humans engineering, and we’re here today with Taylor Milliman. Taylor, why don’t you introduce yourself and then we’ll get into the conversation.

    Taylor Milliman
    Yeah, sure. I’m Taylor. I just graduated from college. Last summer I interned at a company called Braintree and in a few days actually I’ll be starting at Thumbtack to work as a software engineer.

    Host
    Awesome. Maybe for folks out there who haven’t heard of Thumbtack, you could just explain a little bit what they do.

    Taylor Milliman
    Thumbtack is a two-sided marketplace for in-person services. So if you’re looking to hire a plumber or a piano teacher or any, any number of in-person services basically they’ll match you with a local professional, and you’ll get a few quotes on how much it will cost and then eventually you get to go with one of them.

    Host
    And did you have any idea what kind of role you’re going to have as you start there?

    Taylor Milliman
    Yes. So they do team matching, uh, in the first few weeks while you’re there. So I don’t really know what our work, what I’m working on. I think generally there’s a lot more web roles, so it’ll probably be something on the website and that’s also where my experience lies. But the truth is I really don’t know. Yeah.

    Host
    So I definitely wanted to talk to you a little bit about this since you just went through this first job search and that’s a unique perspective that I haven’t had the opportunity to talk about with any guests before in the past, you know? So as a new grad at this time, I’m curious sort of what were some of the things you were evaluating prospective employers on? Like what aspects of the company or the people you met or the opportunity, anything along those lines. What was your framework for deciding who you wanted to work for?

    Taylor Milliman
    Yeah, absolutely. So I would say really the three things that I was looking for were is this a company that’s growing and a place where all have a lot of opportunities for growth? Am I going to work with smart people? And am I going to be compensated fairly for that work? I would say. And the last one is really right now, I mean, it’s important, but I think it’s probably not what I prioritized. So like Thumbtack was not the highest offer that I received, but I did really feel like I was going to work with smart people and potentially have some huge opportunities for growth.

    Host
    Right. So those first two, why were those important to you? As a reasons to join a company.

    Taylor Milliman
    Yeah, I mean, I’d say the first is like growth is just fun, right? You’re learning new stuff every day. The product is working if you’re growing, so you’re reaching new people, you’re providing value. And kind of the same thing is true for working with smart people. It’s just, it’s really fun to have people that push you further, that know way more than you and that are also just excited and energized. That energy is super-contagious and I think absolutely essential for, you know, having fun at work.

    Host
    I suppose then that during the interview process that was something you felt like you were picking up from the people who were you were meeting with?

    Taylor Milliman
    Yeah, for sure. Like I would say one really small thing that connected, that definitely made a difference, you know, I got home from my interview and I had just short nice emails from a bunch of the people that I had interviewed with. So for sure it’s almost more about the personal connection. Like sure, you get a sense of their technical knowledge, but I think if they go out of their way to really try to sell you on the company, that speaks volumes.

    Host
    Interesting. So, and I, and I guess that energy you’re alluding to, so there’s something about the culture too, although that’s hard to pin down maybe and define, but it sounds like there’s something about that idea of being part of something where everyone’s energized to both help each other and the product is working, so there’s just a lot of positive energy that you’re making a difference and that things are working. That was a good feeling you were getting.

    Taylor Milliman
    Yeah, for sure. I mean, if nothing else, I learned just how important it really is. Like on the interview side too, to come with that enthusiasm. You know, there’s definitely interviews that I’ve had where you kind of feel like you’re just getting in the way of their daily workflow. I would say like another thing, it’s a little bit superficial but I think it does make sense to, you know, look for a pedigree. Right? So where, where have they worked in the past? Things like that. I think, you know, it is definitely superficial but I think you can see trends there as well.

    Host
    It is. But on the other hand, some aspects of the the technical opportunity can directly relate to that. For example, if you’re interested in working on a high scale platform in the cloud, it’s just kind of a lot of startup type jobs these days. People who’ve worked at the handful of very, very high scale Internet companies have experience that’s relatively unique, right? They wouldn’t really have gotten that experience almost anywhere else.

    Taylor Milliman
    I think there’s also something to be said [that] if you can convince some engineers to leave Google and companies like that, that speaks good things to your ability to sell your company.

    Host
    Did anything about your Braintree internship help you better evaluate companies? Like, what do you think you learned from the internship process that helped you both understand more what it would mean to be a professional engineer and to evaluate different opportunities when you went to look for your first position?

    Taylor Milliman
    Yeah, so I’ll start off by saying I think I definitely could have done a better job evaluating companies, right? Especially when, you know, I was mostly interviewing a private companies. And so you don’t know the financial details. I think it really would have been smart to ask more questions related to that. So you actually have somewhat of an internal picture. They might not tell you, some companies might not tell you, but I think some would as well. So let’s say I still have quite a bit to learn about evaluating companies.

    Host
    Well, I mean, you’re just starting out. You just did it once, but I mean, but also that’s why we’re talking about it. It’s like whoever’s listening to this who’s just one step behind, one step earlier than you, maybe now they already can learn from that too.

    Taylor Milliman
    So I learned from Braintree basically in the sense of what am I looking for in general, because everyone does value things differently. And so I think I started to realize, “OK, what are the things that I uniquely value and maybe overweight compared to other people?” And then kind of filter companies based on that.

    Host
    So what were some of the things that you realize and maybe like how did you start to realize. What are some experiences you had that were illuminating?

    Taylor Milliman
    Yeah, so I think one was at Braintree we, we had a very heavily pair programming culture, which I liked parts of it, but I think ultimately it was a little, just a little bit too much for me. So I would say it would maybe be 70% pair programming. And maybe what I was looking for was like occasional pairing. So that’s something that some tech does. It was actually great for the internship to have that much pairing and you’re just learning really quickly. But I’m not sure how sustainable it would be for me in the long term.

    Host
    What didn’t you like about it?

    Taylor Milliman
    It’s quite draining. Just being connected to someone for that part of the day, I would say there’s certain times where it just feels like the incorrect use of resources if you’re working on a really hard problem and some times it makes sense I think. But if you’re just kinda going through the motions and banging some stuff out it just doesn’t feel quite right to me.

    Host
    I do think though 
 did they have a lot of, did they have a heavy code review there as well?

    Taylor Milliman
    They did. Which I think was a fantastic introduction for me, especially as an internship.

    Host
    Do you think that when you got to the code review stage there was more clarity because there’d been more collaboration prior to that?

    Taylor Milliman
    Yeah, definitely. It is this weird thing where I think I definitely had to make an adjustment when I went into your internship and I think at all companies. Basically you just, you can’t move, it seems obvious now, but you can’t move as fast as you can on a personal project. And especially in a financial company like Braintree, you cannot move fast and break things.

    Host
    So do you think then that another aspect of the pairing was, you know, you mentioned it was good for you as an intern, so you’re implying it was effective for knowledge transfer?

    Taylor Milliman
    I would, I would absolutely say that. I mean, you just pick up so much from people that are working there. I have no idea what the onboarding process is like at other companies, but I would say here it was really fantastic. I never felt like I was just floundering or, and at the same time it also didn’t feel like too much handholding. Because like I said, so it, it was, it was definitely a good balance there. And it’s like engineer to engineer, so it’s much more 
 it probably just feels more natural. You know, you just kind of have this person just talking about how they do things there and so on.

    Host
    Yeah, it’s almost like a natural mentorship program as well. Like certain people that you pair with you might not connect as well with, but it’s almost certain that, you know, eventually you’ll pair with someone that, um, you really look up to and learn a lot from and they can kind of serve a little bit in that mentor role, which is nice. And then you got to know them through this kind of actually working on something together. So a little bit sort of a more around a project or something. And yet that’s also that kind of thing you’re describing is also kind of happening organically because of how you’re working together. Right. Yeah, absolutely. So you had said a moment ago, not to dwell too much on this, but you also had said a moment ago, you feel like you could’ve done a better job of evaluating companies. I want it to return to that and ask you maybe, what are some things you think you, you realize after the fact or that you would do differently?

    Taylor Milliman
    Yeah. So I think one thing is that, so I mentioned like the financials and the truth is from the people inside the company that I’ve talked to I get the feeling that Thumbtack is growing very quickly, but I don’t have any hard numbers and I actually really do think Thumbtack would have given me some hard numbers if I asked for them, just seeing what are the growth metrics that they’re using. So I think that is valuable for a private company trying to evaluate that because it’s super important if the company’s doing really well, they’re going to continue to attract smarter people and it’s just a flywheel and you’re going to continue to move up. So I think it is quite important to kind of see like, OK, how many employees does the company have and that it’s growing.

    Host
    So you’re really looking at that growth attribute again and then you’re wishing you had drilled down on that and got more evidence of that.

    Taylor Milliman
    I personally do. Yeah, I think for sure.

    Host
    You know there’s an kind of implicit assumption that what you’re talking about, that you’re looking more at startups, in other words, high-growth companies, right? And that you’re talking about a situation where a lot of the opportunity comes from the growth. In other words, that it’s dynamic. It will be changing all the time and therefore a lot of the technical opportunity will come from novelty, right? Like new things are happening and new projects are happening and new technologies are being introduced and so on. Did you ever consider more mature companies, more mature businesses, and if not, why not? And do you think those businesses can do anything to compete for engineers like you who are interested in that, you know, more than startups?

    Taylor Milliman
    Yeah, it’s a good question. So I mean, to be clear, I think calling Thumbtack a startup is a little bit of a stretch at this point. And I would say mostly what I was targeting was kind of that 150 to 500 employee range. So kind of mid stage, I would say.

    Host
    But a more modern Internet era kind of company 


    Taylor Milliman
    For sure. Uh huh.

    Host
    So what’s appealing about that? Is it just the tech stack? Is it the culture?

    Taylor Milliman
    Yeah, I think what’s appealing is they’re already, they already clearly have product market fit there. You know, doing pretty well and you’re not going to, you’re going to have people, a lot of people above you that know a lot more than you, yet at the same time there are opportunities for growth. Whereas I would say I think I would caution people a little bit to join less than 50 employees, startups straight out of school. Part of the reason being that if these companies are considering hiring you it could say something about their ability to recruit talent. Like personally I don’t have that much of a network, so I’m just not going to be able to get into the hardest new startups I guess.

    Host
    Yeah. And also for your first job, maybe you were thinking about a company that, like you said, they had product market fit, so it’s a little more clear what needs to be done and therefore probably you’re going to get to focus more on how to, how to be an engineer. Which is a little less maybe chaotic, a little more structured for your first role.

    Taylor Milliman
    Right. And to your point about about big companies, I don’t think there’s anything wrong about working for a big company. I think this also goes back to what did I learn that I was looking for from Braintree? So Braintree got bought out by PayPal a few years ago and I would say there are probably universals that go along with the size of the company. But I would say in general, companies get a little more risk-averse the further along and the larger they grow. And so I was looking to go somewhere that is still more, trying to take risks, trying to really make big product changes that will move the needle, rather than satisfy existing customers.

    Host
    Got It. That you could still be part of and learn from. Yeah. Right. So you’re just, it’s not so rote that you’re kind of tinkering or maintaining only, that there’s some new opportunities there.

    Taylor Milliman
    Yeah, I mean to be clear like big companies are launching new products all the time, so you can, you can definitely find that, but I think it could be easier to find it at a slightly smaller company,

    Host
    At a company at that scale you can still kind of have an idea of how the whole business works and what the whole business is doing. Which is the kind of context that I think, it seems like you’re going to drink up lot. Like you probably picked up a lot of that at Braintree. You’re probably very excited to pick that kind of context up here at Thumbtack as well.

    Taylor Milliman
    Yeah. There’s this great website called Breakout List. We can put it in the show notes, but I would definitely recommend anyone earlier in their career to check out that. Basically it kind of walks you through some of the reasons why, the good reasons behind that size company. And then also has a list for 2018 of those size companies that are, doing well and growing fast. So I’ll definitely recommend that. I used that last year and that’s part of how I found Thumbtack.

    Host
    So maybe we’ll shift gears a little bit. You wanted to talk to me a little bit about work life balance expectations and I wanted to talk to you a little bit about career expectations. So maybe we can kind of get into that area. So more specifically some of the things you’re expecting just before you start this job. And then, you know, maybe we’ll do a follow-up at some point a few months or so on down the road and sort of see what, you know, how things have lined up with your expectations. You know, it might be an interesting way to look at this. So going into this job, what are you expecting to learn for yourself kind of as a first step in your career? Like, do you have a place you want to get to from here? And then also maybe you could get into the work life and other kind of aspects of the job because you’re going from being a student to working full time. So how are you, how are you looking at that impact it’s gonna have on your life?

    Taylor Milliman
    Hmm. Yeah. So I would say, honestly, I try not to think too far in advance. I’d like to believe like if you just come into work excited about what you’re working on and do good work then that’s enough, you know? And I want to maintain that kind of enthusiasm and just, uh, having fun, learning new things every day rather than 
 I really have no idea. If I think back like five years ago, I had never written code before, so it’s hard to imagine what I’ll even be interested in in five years. That’s really my biggest focus is just coming into work every day and I’m trying to do good work.

    Host
    So to the point where we were, we were talking about in the very beginning though about a kind of personal marketing, do you think there’s an aspect of that in the workplace too? You know, we were talking about it more outside, like you’re a social brand, you know, you’re on Github, you have a blog, you know. Not to disillusion you, but I found in my career that sometimes just coming in and doing good work and being excited is not enough and that they’re, you know, let’s put it this way, there are elements of interpersonal communication with other stakeholders and influencers that are important. I mean, do you think about that too?

    Taylor Milliman
    Yeah, I think, I think that is definitely true. And I think part of that can come from the enthusiasm that you bring, but yeah, I mean it’s definitely important to 
 if you’re just at your desk with your headphones on the entire day, I think you’re missing out on a great opportunity to connect with some of the people around you. But yeah, the truth is, I am just so early that it’s hard for me to know how to think about these things.

    Host
    Sure. It’s probably something you’re going to learn a lot about quickly in the beginning because it will be all new and it’s sort of that initial curve, right? I mean, when I start a job, I still kind of have this attitude of sort of land on the ground and look around and listen more in the beginning, you know? And I would say it’s much more so even for the first time, because you don’t have past experience to sort of put it in a context or it’s at least not a lot. Also I was interested in sort of, you had just mentioned that you hadn’t written any code five years ago, so it’d be interesting to kind of get your point of view on how you ended up in this career.

    Taylor Milliman
    Yeah, absolutely. So prior to college, I would definitely say I kind of had that idea that unless you start programming from a young age and you’re just this prodigy or whatever, then maybe like Computer Science isn’t for you. And I think a lot of people still have this idea that there’s some magic behind being able to program, which is not true. Yeah. But basically I took a class on a whim my freshman year, and I was actually already majoring in Chemical Engineering at the time. And then I took another class and another class. And then I decided I was going to minor in Computer Science. And then the obsession kind of just grew and grew. And then I ended up, so I actually double majored in Chemical Engineering and Computer Science. And ironically I probably spent way more time working on my Chemical Engineering class work than I did on Computer Science, even though I knew I wanted to get into Computer Science. So right there I think this is extremely classic, but I, I definitely fell victim to the sunk cost fallacy. So I felt like I had taken all of these Chemical Engineering classes and so I might as well keep going with the major. Which I think is a tough lesson to learn. But definitely if you are in college, I think just following your interest is definitely a good metric to go based on, rather than, because you’ve taken a certain amount of classes.

    Host
    Do you think it’s had any impact on how people look at your resume that you have the double major, positive or negative?

    Taylor Milliman
    So like an interesting conversation starter. But, and I will say 
 I’ll caveat this by saying I do think especially for Computer Science, you know, your major is a little bit less important. You could easily major in Math or Physics and I don’t think you’d have any trouble getting into the field. So yeah, no I don’t think it really colors my resume very much, but it is kind of a fun conversation starter.

    Host
    But you found yourself kind of less interested in Chemical engineering and more and more interested in CS? Yeah, I would say especially when it comes to like the job prospects, a lot of Chemical Engineering is like plant maintenance, which was, it was just less attractive to me. So I knew, I knew pretty quickly probably starting like my sophomore year that all I wanted to do was, or at least I thought all I wanted to do is software engineering. Even though I didn’t really know what that was like, but I knew that I liked writing code. It was something that I did for fun and I didn’t do my Chemical Engineering homework for fun. So it was pretty clear, right?

    Host
    Right. And I guess the number of ways you can apply writing code to so many different kinds of projects and out outputs, you know, it’s obviously much more of a general tool, right? So it’s not just something you’ve learned just to learn the field. It’s kind of a very different field in that regard. Right. Because it’s, it’s a hammer.

    Taylor Milliman
    I mean it, it came in super useful for chemical engineering for sure.

    Host
    I’ll bet being able to write better code than some of your peers probably helped to get some of the homework done more quickly too. Right, absolutely. Interesting. So I guess another interesting thing to me about your educational background was that you also did this code camp while you were in school. So I was curious about why you did that, why you thought you needed to do that and then maybe contrasting that to the I guess more traditional CS education you were getting in college.

    Taylor Milliman
    Yeah, sure. So if you haven’t heard of freeCodeCamp, it’s basically just this website, and honestly most of what it is is it’ll give you a project idea that is about right for your ability level and then you build it and then you move on, and it kind of helps you create a portfolio of projects. And so it’s not, it’s not like a traditional coding bootcamp. It’s totally free and the really cool idea on freeCodeCamp is eventually if you finish, which it’s actually quite hard to finish, but if you 
 so I haven’t finished all the projects, but eventually if you do finish, you can do work for a nonprofit. And then if you even go past that get paid work or an internship or just free work for a nonprofit. But still basically now you’re getting professional experience on your resume. If you get all the way through freeCodeCamp, it doesn’t matter if you don’t have any degree I can guarantee you you will be employable.

    Host
    Right. I see. So once you kind of thought, “Wow, this is something I’d like to do,” it was part of your ambition and that this was a way to get a portfolio together and have more of a credential.

    Taylor Milliman
    Yeah, I think it started out from maybe a couple of things. One of frustration of applying to internships and just not being able to get anything, and to a frustration with the curriculum that we just weren’t building enough stuff in our classes. And that’s really what I was the most interested in was just trying to build stuff.

    Host
    I see. Right. So do you have an opinion that on how useful or, I guess, how valuable to you you think the traditional CS education was in terms of being a software engineer? Because I’m interested, I’m going to be interested in hearing the answer to that also a little further down the road because I have my own opinions about it. And I know there’s a lot of conversation back and forth about what’s the value of CS versus what software engineers actually do day to day.

    Taylor Milliman
    Yeah, this is a really tough question and definitely one that I want to be cautious with because I don’t want to make any general [statements].

    Host
    Right. Without having worked for years. Right, exactly.

    Taylor Milliman
    Yeah. Not only that, I think it’s also like when you are choosing whether or not to go to college or go to a coding boot camp, you’re at a very impressionable age. So I don’t want to give any like broad recommendations, but I think the 


    Host
    I’m not asking you to tell everyone else what to do. I’m actually just asking what your impression was since you did both, you know, and then, because you’re in a relatively kind of I think mainstream use case for both of those decisions. Like you weren’t coding since you were a little kid. Right? So you kind of got to college age, were exposed to programming and then found yourself really liking both the CS you’re taking and then thinking, “Oh, I want to do this as a job.” You kind of covered both bases, you know what I mean? There’s probably a lot more people in that position then were coding since they were little kids and they’re going to be more and more of them because it’s been a very strong job market for like a decade now. So I just think from that point of view, it’s generally interesting to a lot of people, but I think you should just speak from your own experience.

    Taylor Milliman
    So I think my own experience, I’d say that you really don’t need a CS degree. And I think I would even, I would say that I do think a lot of the traditional way that we teach Computer Science right now is a little bit broken. So I think I had a lot of frustrations with that system. I’m not sure if coding bootcamps are necessarily the solution either, but I think 
 I don’t know if you’ve heard of Lambda Schoo, but it’s a little bit of a longer a coding boot camp and I, you know 
 models like this are really going to be, just continue to increase in popularity in the coming years because at this point I’ve just seen so many people that had never written code and then can get good enough in six months and get a job at a company. And I think you’ll probably learn more the faster you just get a job at a company and start learning like that. So that would be my like overarching opinion.

    Host
    And I guess have you seen other friends or colleagues that have gone that route and then they become employable? Right. So that’s, it is a way into the field now that didn’t exist. Certainly not 10 years ago, maybe not five.

    Taylor Milliman
    It is definitely. I think it depends on what type of person you are. Because I would definitely say it’s harder to break in that way. But yeah, it is possible.

    Host
    And maybe full circle, coming back to the start of the conversation about the personal marketing and the personal branding and so on. That probably helps as well to get to break in.

    Taylor Milliman
    For sure. Yeah, I think definitely the personal personal branding is essential, especially if you don’t have a degree in Computer Science.

    Host
    If you don’t have those other sort of more traditional attributes, it’s a way to, there’s maybe new what new opportunities and new ways to get into the field.

    Taylor Milliman
    It’s trending in the right direction I think.

    Host
    So what did you feel was broken about the traditional curriculum or how it was taught to you?

    Taylor Milliman
    Well, like I said, I think it’s just not enough about building things. So I don’t want to discourage people from getting into the algorithms. I think that’s interesting and potentially useful.

    Host
    What I think is the missed opportunity here is that a lot of the theory could be brought to life and the value of it could be demonstrated through what you’re talking about, through it being applied, combining what you’re saying with the fundamentals that are in the traditional curriculum, where if you learn these concepts by building things it would bring them 
 the value would be more apparent and it would also answer kind of the concern you have. Like what is the point of this? And I’m not, am I actually learning to build to be an engineer and build things, you know?

    Taylor Milliman
    Yeah. No, I think that’s definitely true. I also think I’m naturally maybe like slightly overcritical of, I know I have this tendency to be a little bit over-critical because it’s like you see, you see all the places that it could be better, naturally. Whereas like, I’m guessing that if you go the other route, like you see all the benefits of school.

    Host
    So, you know, I had this algorithms professors who would cover an entire three chalkboards with the mathematical proof of a perfect hashing algorithm, and I’m not going to need to understand that because I’m going to be using hash tables in standard libraries in any modern language and platform I’m using. But at the same time I felt like it gave me this sort of conceptual framework for thinking about problems where I could see a lot of times that things that used to look very, very different problems to me actually had kind of the same underlying patterns to them. And I found it to be very powerful after I was going to school for a couple of years, I kind of felt myself being able to see things in a different way than some of the people I had been working with already for years.

    Taylor Milliman
    Yeah, I think, I think that’s definitely true and there is a lot of value and really understanding something at its most basic level. Like one experience that I had that was huge for me was I was a TA. And so I taught, I’ve taught recursion so many times and I swear if I had just learned recursion once 
 like looking back on that, I thought I knew what recursion was. And then like ears later, I was still learning more things about it. I think my favorite thing about kind of some of the other models is you really do get some immersion learning, which is something I feel like I missed. And parts of college it would be like, you never, you don’t know, you still don’t know what, what does it feel like to write code for four hours a day or something like that. And so I think for me that was the real actual value of it. Not just having a portfolio of things, but it gives you the confidence that your skills are real once you start building big projects. And the world just kind of opens up after that. I think it really, it makes your skills feel real and then that gives you the confidence that you’re you don’t need to wait to become a software engineer. You can start right now.

    Host
    So we just ended part one of the interview with Taylor recorded about six months before the second part of the interview, just before he started at Thumbtack. Now we pick up the conversation six months later and we get an update from Taylor about whether his actual experiences have met his expectations, confounded his expectations and just get another perspective on what he’s learned in the first leg of his journey as a professional engineer.

    Taylor Milliman
    Yeah, exactly. I think like kind of the almost the saddest part would just be if those growth curves like do start to slow down. Because I mean I think we’ve all felt that at certain points. You know, it’s like sometimes I look back on periods in my life and you realize how intense that learning curve 
 I mean I think like, I still am learning so much now, but I do look back on the point where I was like, really starting to get into coding as just like ridiculous growth. Just absolute obsession. And I think those times are definitely special. And when you’re a kid for sure, that’s like every day.

    Host
    You can think about a depth of knowledge in a different way versus like the rate at which you’re learning and it becomes like a thing of yes, I am not learning new things about programming as fast as I was many years ago, let’s say. But at the same time, the kind of holistic way I can approach a problem and solve a problem and solve the entire problem for a business has improved a lot. And I think you accrue experience and then you can go deeper and more completely into problems, you know, and maybe it’s a different kind of growth and, you know, it doesn’t need to be as rapid.

    Taylor Milliman
    That’s not necessarily desirable though to always be learning at this really fast rate.

    Host
    Right. Like it’s, you do need periods where you, you gather and then, you gather knowledge and you then apply it. And in the application you learn a great deal because you’re focused more narrowly on a particular problem and you’re applying all this knowledge to create something that is a solution to a particular problem.

    Taylor Milliman
    Yeah. That’s, that’s kind of a good analogy to bring it back into, you know, some of the university stuff that we talked about earlier, you know, it is kind of interesting. It’s like, when you, when you are at a company, it’s mostly application. Every 
 most of your learning is directly related to solving a problem. And I think there is definitely, no one would argue this. But there’s definitely something to be said with long periods of open-ended learning.

    Host
    Yeah. And so it is definitely a balance. Yeah. That’s a really good way to think about it. As you were saying that, I was thinking “That’s basically the difference between going to college and Stack Overflow,” you know?

    Taylor Milliman
    Yeah. Stack Overflow is what I like to call “just in time learning.”

    Host
    It’s like “This is not working. I need this to work for my job today.” Yeah. Like that’s sort of the breadth that you’re going to go seek the answer to. You know, you don’t need all the theory underneath it. You need to understand enough to be certain that it’s solving your problem.

    Taylor Milliman
    Yeah. I think kind of one thing that I would love to see more of in higher education is more of like a barbell approach. So you take like some amount of things are interesting and important to learn about, but not immediately useful, which I think university does great. But then also kind of on the other side of the barbell are things that actually are immediately useful and then you can go out and apply right there. Which I think internships kind of can help you fill that gap. But I think there’s definitely still kind of that missing piece a little bit. One gap that I see in my own skills is it’s like there are 
 there is a collection of skills that are both useful and that you will never learn on the job. So one example for me is like really understanding how databases work, right? I use databases every day, most programmers do and you know, I learned how to query those but to really understand performance implications, how they work, query planning. I mean you’re going to have to go out of your day to day if you want to learn that.

    Host
    Yeah. That’s an interesting example that I’m really close to you personally because I’ve spent a lot in my career in data and I took a really good course in grad school on exactly that. How databases are implemented and basically it was like an operating system’s kind of class, but all of that database implementation, you know, and databases are really 
 there’s a lot of similarity to operating systems. They basically re-implement a lot of the primitives, at least traditionally did implement a lot of the primitives around IO and scheduling because that’s really the core of where their performance comes from.

    You could generalize what you just said to be: we as programmers use black box tools, right? Starting with the program, any programming language which compiles to some executable code, which runs in some runtime environment. You don’t think about any of that when you’re writing the code, you’re writing the code. Like it’s a little story writing about what you want to happen, you know, and that’s a black box. Any external resource you use, the network is a black box to you and the database you use, right? And so on and so on. All the protocols of the Internet. So that’s really what software engineering is, is building these abstraction layers so that you can operate at higher layers. Think about the cloud itself. It’s an incredible advancement of that idea and the amount of power that 
 what it enables someone to not think about yet have these primitives at their disposal. It’s incredible.

    Taylor Milliman
    Yeah. I guess that is kind of where a lot of kind of tension between these two groups comes from is basically like, like how deep behind how many layers should we peel this abstraction back? Like in, in my mind, do most people need to learn assembly? Probably not. But do most people really need to understand how database indices are created and how they work? I think probably.

    Host
    Well you would benefit from it. So again, I come back to this, I’ve said this in a lot of my shows, but my point of view on all this is very specific to the fact that I didn’t study anything technical undergrad. Later after I’d been working for years, I sort of fell in love with programming and I was really motivated to be self-taught. Then I took a certificate, a couple certificate classes in C and C++ and, and it was really interesting actually to start with those languages because they don’t hide a lot of these concerns from you. And then it’s like what you were saying where I was working professionally, but I felt these gaps in my knowledge and I went back to grad school and it filled in tremendous amounts of kind of background understanding of how things are actually working underneath and I felt like it made a really big difference in how I could approach problems and solve problems. And so it’s like you don’t need to know, but knowing is powerful. But let’s just say there’s a whole distribution of work you could do as a programmer. Right?

    Taylor Milliman
    Huge.

    Host
    The more you know, the more out of that distribution you can participate in.

    Taylor Milliman
    Yeah, that’s a great way to put it.

    Host
    And so like, I think it’s not a either/or or bad or good. Maybe it’s cast too much in terms of status or just really these really strong opinions about “You have to do x, y, z,” rather than it being seen as this continuum that you could just move around and then move across, you know?

    Taylor Milliman
    Yeah. No, I think that’s definitely true. I actually think that’s why a lot of people don’t end up getting into CS, because a lot of it is just kind of this one track go hyper-technical. And that’s not the way that you have to approach it. Like just kind of building like fun websites, it’s really not, it’s not that technical. Like I don’t want to get into the “Anyone can code” or whatever debate. But yeah I think there’s a huge spectrum and the reason some people think it is just so hard is because they’re thinking about it as this like hyper-technical thing, which is just one route.

    Host
    And to your point, building a website, it’s a little more than that, but it’s a lot more about learning how to carefully edit these text files to get things right then needing to understand exactly what they do, and you understand what they do through looking at your page in the browser and then you get that back and forth thing. I don’t think you need more than that to get started. And I don’t 
 I think you’re right, like we should be making this as accessible as possible to get started and then it’s a lifetime of learning that you can engage in. That’s why I enjoy it because it’s so deep and multidisciplinary and there’s so much technical to learn, but then being good at it involves all these other aspects to do that end up in [producing] valuable software.

    Taylor Milliman
    Yeah, I think it’s really interesting when I kind of bring this back to places that I’ve worked. Last summer when I was working at Braintree, like I didn’t realize it at the time, but the work that I was doing was extremely technical and pretty in-the-weeds and hard and I just thought “This is just what like all professional software engineering is; this is how it works.” It was my first internship and I though OK, like this, it’s just like super technical. And now that I work at Thumbtack, I just realized how different 
 that it really can vary between companies in kind of the majority of roles. It’s like really thinking about product is as big of an asset to you as your software engineering skills.

    Host
    For sure. I mean you’re valuable in a context, you know, not in a vacuum, which is like a big other aspect of this [idea that] the only way to be a professional software engineer is to have this technical depth, because that’s only one aspect of being a valuable engineer. Like the other aspect is you’re building the right thing, not just the right way but the right thing.

    Taylor Milliman
    Yeah, and I think as we kind of build more levels of abstraction, the roles need to be some people that need to really understand and be able to peel back these layers. But I think more and more as there’s higher levels of abstraction, being able to think about product and about other aspects outside of the type of work that you’re doing, it’s just going to be increasingly important.

    Host
    You know, when we last talked, it was right before you started this first job and now you’ve been been there six months and we’ve kind of already implicitly talked a lot about this, but you know, do you feel like there are any specific things you’ve learned so far or expectations you’ve had that were not met, or things that were surprising?

    Taylor Milliman
    Yeah. So I would say like one really big surprising thing that I would kind of tell other people is processes, company culture, how companies function varies way more than I expected. And so I would just encourage you early in your career, try at least a few places, because there are lot of differences and because I tried to 
 companies that on paper are fairly similar, like both fairly small, both have offices in San Francisco, both kind of started within the last like 15 years or so. And I found absolutely huge differences. So to kind of dive into those, one is just like, I do think how often you deploy code just kind of permeates your life as a software engineer. And so last summer we would deploy a once a week. Now it’s like we just click a submit button and your code will start rolling out. So it’s like you can kind of deploy whenever you want to within reason. There’s lots of guidelines here, but I think that makes a huge difference. You know, I wouldn’t say that. I think there’s good reasons why both companies did what they did, the deploy schedules that they have. But I will say if it’s possible to go somewhere with like a really fast deploy, so that just tightens the feedback loop for you. So the quicker that you can get your code reviewed and then get your code into production, the faster your feedback loop, then in my mind, the faster you’re going to be learning.

    Host
    Interesting. So do you think it affects 
 there’s this whole Conway’s Law, which is that the organization of the software itself, and maybe we could even argue the process, reflects the organization, the structure of the organization, of the people in the organization?

    Taylor Milliman
    Yeah, I think so. I’ve also heard kind of a similar quote, which is like, “First we shape our tools, then our tools shape us.” And so it starts out as this just kind of process thing that you’re creating. And then I do really believe it becomes part of just how you, how you plan projects, how you think about how aggressive you can be with your timelines, like all these things. It’s definitely, I mean, it’s changed the way I work, honestly.

    Host
    It’s like this idea that you can decisively act to change things and fix things, right? Like right before we got on this call, you know, I happen to be on a call for my team and there was an issue and it’s after official release hours on Friday. But I know I just can just ask to do this, make a quick change, push a quick change out, all that’s automated, all that will work, and then we’ll be getting information we need to fully solve this problem on Monday. Like just knowing that you can break problems down like that and solve them by making changes to production. You know, it’s very 
 it gives you a lot of power to help the business and then you feel good about the work you’re doing, you know?

    Taylor Milliman
    Yeah, absolutely. Kind of another thing that I think is interesting that really surprised me was I think in the last interview I said something along the lines of being a little bit critical of pair programming basically, and now being somewhere where we don’t pair program, I actually see some of the immense value of it. And so what I would say is just I really think in general, we really undervalue how educational it can be to just observe someone and learn through that. Like we’ve kind of 
 I think this actually used to be, if you go back in history, this was an extremely popular method of learning. And now we’ve kind of, we’ve kind of stopped using it for the most part. I do think that extreme pair programming is probably not the best fit for some companies. But instituting that, like coming to Thumbtack I just realize how, again with I think I was talking about it before, I’m tightening feedback loops. Pair programming is one of the fastest feedback loops that you can have. You’re writing the code and as you’re writing it, you’re getting feedback on it from someone sitting right next to you. I definitely have some appreciation for that now and I think without that at my internship I would have been pretty lost. And kind of going alongside that, one definite struggle I had was the approach at Thumbtack for onboarding. It’s much more just like throw you into the water and see if you could swim, right? Like I don’t think they think about it like that, but it’s just like, it’s moving very quickly. People have less time to pair with you every day. And so I think, it’s really interesting to see those two approaches and I definitely have a lot more appreciation for pair programming.

    Host
    That’s really interesting because basically what you’re talking about alluding to this historical model of learning this way, his apprenticeship 


    Taylor Milliman
    I don’t like it when people portray apprenticeship as this like perfect model that we moved away from for no reason. But similarly, I think that there are places where it could be super valuable. Like another example is, does anyone really know how you learn to be a good manager?

    Host
    Yeah, I’ve had that conversation on other episodes and I’ve been in that situation myself where I suddenly transitioned from individual contributor to leading a team with no training and no support, you know, and it happened to also be a pretty time-pressured and stressful situation for other external reasons. But yeah, it’s one of the worst aspects of our industry is how we 
 the lack of support and training for people transitioning into manager roles.

    Taylor Milliman
    I just have to wonder like, what if you just had this person basically shadow a great manager for a few days? Like I feel super lucky that I’ve had just an excellent manager at Thumbtack and so I always feel I should be taking notes so that if I’m a manager, like I try to remember to do this stuff because otherwise I just don’t know how you pick up those skills.

    Host
    Do you have any other thoughts about things that have been surprising to you so far or things that have gone really well, better than you expected? Like maybe what were you most worried about going into your first job and then, has that panned out?

    Taylor Milliman
    Hmm. That’s hard because, I think, when I kind of look back, I did have very little expectations. Like I’d kind of, when we interviewed, I’d just gotten back from this trip and I was almost really like in the mindset of like, “Oh yeah, I’m about to start work in a few days.” But I do think kind of one of the biggest concerns, and I think it is just a really hard part, is like, is the initial ramp up the first one to two months that you’re at the company, you’re working with a stack you’ve never worked with before, people that you’ve ever worked with before and a product that you probably don’t know that well. And I think that’s just like, it’s difficult. And I think you realize that like that’s going to probably be fairly difficult. And most companies you joined, the only difference is you start to get used to that and expect that it will be difficult. I mean that’s a hard part of joining a company I think.

    Host
    Right. Yeah, that makes sense. And how much of, how much did you feel like you needed skills that you have never had before? Like, in terms of workflow tools, working with teams, all this kinds of stuff, which you kind of haven’t done ‘til you’ve done it.

    Taylor Milliman
    One thing I will say is there’s a number of times in my first kind of month or two where I just thought, I wonder how I would try to do this if I, without what I know, what I learned from my internship, like I probably would have gone down some really dumb, ridiculous rabbit holes if I didn’t know. Like, this is how people do. It’s like, I don’t, I don’t think I knew what it meant to grep for something before my internship. That might sound wild, but I didn’t really know what that was. And just so many things like that.

    Host
    Well, like basic code reading skills.

    Taylor Milliman
    I mean that’s the second one: just how do you navigate around a code base that is at least 10x anything that you’ve ever seen before? Super helpful. But I would say for the most part, it wasn’t necessarily like brand new skills. I think it was pretty similar to the ramp up for my internship. It’s just like you kind of forget that this is pretty hard. You don’t know anyone and you’re in a code base that you don’t know working with tools that you don’t know. So it wasn’t necessarily that it was like super new, it was just that I kind of forgot that all of the different aspects that it takes to ramp up and be productive as an engineer.

    Host
    Right. So it’s just some of it as a matter of setting reasonable expectations for yourself and keeping perspective. Right.

    Taylor Milliman
    Yeah, I think it’s definitely something that you can get better at with time. And then also just being patient. I think definitely as a new grad, like most of the time you’re going to be questioning, “Oh look what if I don’t learn this, or what if I can’t learn this?” Or you kind of put unnecessary pressure on yourself, whereas eventually after you’ve done this a few times, you just like, this is how it goes. Like there’s kind of the two weeks where you have no idea what you’re doing. And then it clicks and before you know it, you’re like pretty productive. Another kind of more specific thing that I was not very good at, a kind of skill that I had to pick up was like, when should you ask the question? Like when, when should you reach out? When do you decide that you’re like stuck enough that you should ask someone else a question. I mean I think, I think this is part partially a company culture thing and partially just a matter of like, you PR mo I would say a lot of people early in their career don’t ask enough questions. Um, and one thing that I really liked that my manager told me it was basically it’s, it’s just a very clear guideline which is like do your due diligence, right? Like spend 15 to 20 minutes. Like think about all the things that you would think about if someone asked you this question and if you still can’t figure out. Just ask someone. Um, and I think that that was super helpful for me because I think not asking enough questions can be super detrimental. And you realize once you’ve been here for awhile, like people that have been here for two years, if they know someone will be able to answer that question extremely quickly rather than I’m spending half an hour going down the rabbit hole, they don’t hesitate.

    Taylor Milliman
    Kind of another thing along those lines that I found out, I was like if you can ask someone for a higher, a high-level over view of a system, you can often dig into the details. So like if you just know like these are the three big things this thing does. Then you have the framework to kind of actually go deep into the code and all of these trunks of code into this framework of higher-level components.

    Host
    You you have with that amount of context. Then you, if you go and do your job, which is to read the code, you have some context of what you’re looking at and things start to make sense. Much more sense. Yeah, it’s interesting. I’ve just, as I said, like we just added two people on the team I’m on. As I mentioned, I’ve been involved with onboarding the whole lot and I’ve been trying to balance this exact thing. The balance there is that they, that they’re going to have to go write code that like there’s a line somewhere in there between you help them understand what they need to do and then they need to go do it.

    Taylor Milliman
    Yeah, 100% it’s like you don’t really understand something until you’re actually forced to do it.

    Host
    Yeah. And then again to explain it to the next person so they can do it. Anything else you want to counsel people who are about to start their journey as professional engineers? Maybe let’s say you’ve gone through your first leg of it.

    Taylor Milliman
    Oh I’m super happy with my company decision overall. I think where you choose to work matters more than I thought it did and I would also say just optimize for learning early in your career is the best choice that you can make. A big part of having fun as well I think is getting kind of a little bit too much responsibility and having to figure it out. A lot of the really fundamentals are kind of the most important thing. And what I mean by that is, the fundamentals of being good at your job, in my opinion, are one, really caring, to like taking care of yourself. And I think just those things like caring and taking care of yourself will go a long way. Actually, I think a lot of employees don’t have those things. And so those are kind of the fundamentals. And then obviously like your technical skills will be important, but if you care enough, you’ll figure out what you need to get the job done.

  • Show Notes

    Topics: Alpha Go, Data Engineering, Data Science, Information Systems, Machine Learning, Local Search, Location-Based Apps, Monetization, Natural Language Processing, Objective Functions, Optimization, Podcasting, Self-driving Cars, Sentiment Analysis, Social Apps

    Companies and Organizations

    Local Maximum Podcast Web Local Maximum Podcast iTunes Local Maximum Podcast SoundCloud Luminary Media Foursquare New York University - Masters in Information Systems New York University - Stern School of Business StickyMap Yodle

    Introduction

    NOTE: This episode was recorded in April 2018. Since then Max has moved on from Foursquare to join Luminary Media as a Machine Learning Engineer.

    After working for a few years as a software engineer, Max Sklar found himself exposed to and fascinated by more open-ended problems while studying machine learning and data mining in the MS Information Systems program at NYU. He created a location-based app StickyMap so he and friends could put “markers” naming locations onto Google Maps. This was fun but the app didn’t take off. After a stint working on local search at Yodle, he discovered Foursquare, recognized their gamified user participation would drive their map app to large scale, and talked his way into a job there as a machine learning engineer. Max spent the next 7 years doing machine learning and helping to build products at the leading edge of the industry. More recently he launched the podcast “The Local Maximum” as a forum for sharing his own opinions about the impact of AI and machine learning and for interviewing guests working in the field. It’s a treat to talk to someone who can actually claim to be an ML veteran, and we dig into the challenges of and differences between data science, machine learning engineering and data engineering, and talk about the crucial role of humans in ML-driven products. It’s equally fun to talk to a fellow podcaster about his goal of using his show to foster a dialogue with his audience and to push them to explore ideas outside their “local maximum.”

    Guest Bio

    Max Sklar is the host of The Local Maximum Podcast, a weekly podcast with interviews and analysis covering ideas in AI, emerging technology, and current events. The most recent episodes and the archive can be found at localmaxradio.com.

    The bulk of his work as a machine learning engineer was at Foursquare, where his worked there included building Foursquare City Guide’s critically acclaimed 10-point venue rating system and the Marsbot app. More recently he led the development of a causality model for Foursquare’s Ad Attribution product.

    He currently works at Luminary Media where he is transferring these skills to build a recommendation engine for podcasts.

    Links

    Facebook: The Local Maximum Podcast YouTube: Talk: “Using Location Data with Marsbot - Max Sklar, Foursquare” YouTube: Talk: “Max Sklar’s Yale Computer Society Talk, April 2018” YouTube: Talk: “Workshop on Urban Data Science 2015 - Foursquare Presenation” Paper (Co-author): “Detecting Trending Venues Using Foursquare’s Data” Paper (Co-author): “Timely Tip Selection for Foursquare Recommendations” Paper (Author): “Fast MLE Computation for the Dirichlet Multinomial” Twitter: Max Sklar Twitter - Lumnary Media Podcasts: Max Sklar Foursquare: Max Sklar Linear Digressions Podcast: “Are machine learning engineers the new data scientists?

    “The Local Maximum” Episodes Related to Topics Covered in this Episode

    “Episode 43 - Self Driving Cars and the Cycle of Adoption” “Episode 34 - Data Engineering with Joe Crobak, Foundations of Smart Software” “Episode 7 - [Foursquare founder] Dennis Crowley on Inspiration, Innovation, and Future Tech”Transcript

    Host
    Hello and welcome to “Using Reflection,” a podcast about humans engineering. And we’re joined today by Max Sklar and Max is a machine learning engineer at Foursquare. Why don’t you go ahead and introduce yourself Max and tell us a little about your background and we’ll get into the conversation. We’re gonna have a great conversation today about your career in machine learning and how things have changed and also get into your awesome podcast, “The Local Maximum” and it should be a lot of fun. Take it away.

    Max Sklar
    Great. Yeah. Hi Mark. Thanks for having me on. I am a machine learning engineer at Foursquare about coming up on seven years now, which is like crazy. And you’re right, I have a podcast and this is my first time doing an audio recording on someone else’s show since I started the podcast. So very excited about that. I’m already finding a lot of things due to this podcast. Like I found your podcast. I like you have a lot of interesting conversations. It’s really great.

    Host
    So, you know, one reason I thought it was interesting to talk to you was you, you’ve been in the machine learning space and had that title and been doing that kind of engineering work while the entire field essentially blew up around us, while the term data scientist was invented, while big data infrastructure, uh, became a huge part of cloud platform offerings and moved into the business mainstream. All of these trends, you know, in these last seven years, you could really say. So I was interested to start with, you know, your perspective on that evolution and maybe you could start with your personal story as we were talking about before we got on mic, just how you moved in that direction, and then maybe you could talk about what you’ve seen changes in the field around you.

    Max Sklar
    Let’s start with how I got into machine learning. I, you know, uh, it was, well, I did take machine learning as an Undergrad and that was, that was fun. I was into it, but I wasn’t able, I, you know, I wasn’t able to find any particular work in that. I guess what we were doing at Wireless Generation – and I think we should probably mention that we both worked together at Wireless Generation way back in probably I want to say 2008 – so that was a long time ago. Yeah. And so it was, it kind of seems like we might be going in that direction at Wireless Generation where we were doing data analysis in order to do smart instruction plans, but we never kind of got there. At least I personally never got the chance to work on that stuff.

    Host
    Can we just interrupt for a second and maybe frame that by saying what kinds of, what kinds of products Wireless was making and who the audience was so people have a little context there.

    Max Sklar
    Wireless Generation was, oh my God, it’s 10 years ago, Mark. I’m trying, we were doing the front end a lot for assessments, like reading and math assessments. Mostly for a young children, if I remember correctly, it was like K [kindergarten] through three [third grade] for the most part. We had other grades too. And the point was to do those assessments. We had a good front end for it and the Palm Pilot. And then the back end would do some data analysis and you know, would tell teachers how to do instructions with the kids in order to kind of maximize their effectiveness as teachers. So that sounded really good, but it wasn’t, you know, it wasn’t very large scale machine learning type stuff. It was more like, you know, kind of handmade rules type stuff that we’re already given to us by the sort of, by the education industry or, you know, if I remember correctly, like the testing companies and things like that.

    Host
    So you’d have these domain experts who were the ones formulating the rules and then the data analysis was identifying patterns that match the rules.

    Max Sklar
    Yes. Yeah. And so it wasn’t, you know, there was nothing, there was nothing to do on the engineering and product building side other than kind of taking those specs and executing on, which there’s some interesting problems there, but it wasn’t the kind of open-ended problem that I wanted to work on. And I sort of didn’t know at the time. But when I got to Grad school and I started learning about more about machine learning and natural language processing, I was like, oh, these are the problems that I think are going to capture my interest because they’re so open-ended and they’re so, you know, you don’t know. You don’t know where. You have to kind of figure out where the stopping point is. You have to kind of figure out what it is you’re going to get the machine to learn.

    And I just always liked the idea of, you know, rather than having us program the computer and trying to figure out every single rule that comes up, just kind of figure out a way to have the computer program itself. So that way we can kind of like sit back and have it have to do its work. And it just seems to me in the long run that’s going to be, that’s going to get us to a place where we’re much more effective. And it turns out that in machine learning, there’s a lot of stuff that, you know, humans have to do all the time. It’s not that, um, you know, it’s not that computers just go off on their own and figure it all out. Although I have built some systems that do get smarter over time without much intervention. And that’s always really cool. That’s always when I feel like, you know, wow. I built this, you know, a few years ago and now it’s still working and it’s getting smarter because it has more data. I’m always just like amazed when that happens.

    Host
    And is that related to the open-ended idea? Are those two things connected?

    Max Sklar
    Yeah, I mean, the open-ended idea is that it’s not just, you know, hey, you have a client or you know a company that wants a specific thing done and then you have to execute on that specific thing. It’s kind of an open-ended research question. You know, for example, some of the things we do on an ad just to bring in some of the things we started doing at Foursquare 
 what’s the sentiment of a tip? Is someone’s text and it’s like a tip and a tip at Foursquare is like two or three sentences that tell you whether a place is good or not. Little reviews that people leave, and can we automatically detect whether it’s positive or negative. You know, I don’t, nobody’s coming at you with the rules. It’s just like what, how, how accurate can you make it? And also like, what’s the, you know, what’s your metric for how well you’re doing?

    Host
    Right. And even that’s 
 what’s interesting about what you’re saying there as part of the openendedness is, you know, as engineers, we need to make things precise and quantitative, right? And that’s like how do you make that qualitative judgement quantitative enough to even define success engineered to a goal, and then measure whether you’re reaching the goal?

    Max Sklar
    Yeah, yeah. I mean, it’s oftentimes I think there’s an arms race between the machine learning algorithms that figure out how to optimize for a certain objective function. And then there’s kind of working on the objective function itself and what that should be doing because, and this is probably true when you are managing an organization as well. I think if you kind of set very specific goals for people to hit, you know, let’s say, you know, you say this quarter we’re going to work on maximizing our revenue, let’s say. And then, you know, you have all your rewards and bonuses based around that particular goal. Well, you might end up overdoing it. You might end up having people you know do things that are good for the short term but bad for the long term.

    And the analogy I’m drawing is it’s the same thing for the machine. If you have a certain objective function, sometimes it’ll get too smart that it does well on the objective function, but it doesn’t do very well on what you’re trying to accomplish. And so the objective function sometimes gets more and more complicated. A good example like that recently that we came up with at Foursquare is, you know, we have our Pilgrim technology, which is our “snap to place.” So that takes the data from your phone and tries to figure out exactly which venue you’re in. So to give an example, like, are you in the Starbucks? Are you in, are you at the Dunkin Donuts? Are you at the mall? Well there’s a certain issue with the mall where it was always, you know, it would snap people to the mall, but it was very bad at telling you which place exactly you are inside the mall. Even though we have those places in our database just because it was always more accurate when it just says mall. So it, and we wanted the data and the places inside the mall. And so that was a change. They had to make a change on that team and you have to make that change by, you know, fiddling with the objective function, not with the algorithm itself.

    Host
    I see. So a large part of the design then and the human aspect of this is trying to capture the goal, which is human-defined in the objective function, which is what the system is learning toward and optimizing toward.

    Max Sklar
    Yeah. Yeah. It would be nice if you had one goal to work towards and then you are, we’re constantly researching the algorithm and the data and the features to get to that goal. But one thing you learn is life is never like that.

    Host
    Right. And in fact, as you were talking about this, I was just thinking how reductionist and challenging it is to have just one objective function. You know how like you were talking about managing an organization, well, your example was the objective was motivating too much behavior towards short term gain, but of course like that’s an example where very quickly you see there are multiple goals and they have multiple timeframes. And how do you capture that in one objective function? The nice thing about human interaction is you could set more than one goal for people and humans can think about that and, and work with that.

    Max Sklar
    Yeah. And oftentimes there’s a lot unsaid with humans and human learning that they pick up on that. But that’s why, you know, that’s why experience is valued and that’s why, you know, human intelligence is still valued. Thank God

    Host
    We’ve got another minute before obsolescence.

    Max Sklar
    Yeah, yeah, sure. We do. We have plenty of time.

    Host
    If we want to backtrack and sort of, you’re at Wireless and you’re noticing that there’s this opportunity to attack these more open-ended problems with data. You go to Grad school, you are exposed to those problems and you’re, you know, it sounds like you were engaged by those ideas. So then how did you keep moving in that direction?

    Max Sklar
    Well, a few things came together at once. So I was, the grad school program I was in was the Information Systems program at NYU. What it was was just a half the classes were from the Computer Science department and half the classes were from the Business school. So it was kinda nice. I got to exercise both parts of my brain. I didn’t want to do a program that was 100% Computer Science for three years because I already did that as an undergrad. And I already had a job as an engineer for several years before that. So it was kind of like, what’s the point? Even that summer, the summer that I was in grad school, I did a design and research internship at Columbia because, you know, I was like, I don’t want to do coding. I’m going to do years of coding. You know, I’ve done years of coding.

    But I think when I was there, I took some classes on data mining and machine learning, both from a business school perspective and from a, and from an engineering perspective. So I took, you know, for example, Yan Lecun’s class at NYU on machine learning. But before that I took the data mining class at Stern to get an idea of, okay, you know, what are, how do people in the business school think about this? What are their, you know, what are their goals? And it was really great to kind of get both. And then at the same time I was sort of, I was learning about, okay, I had been doing a lot of, a lot in the field of local search before that. So when I was an undergrad, I had a website called stickymaps.com. It’s still up.

    Host
    That was a site where what people would do is it, it was, okay. The Google maps API had just come out and I was kind of thinking, what can I do with this? And one of the things you can do with this is you can have people place little stickers on the map, I guess we call them stickers now because Foursquare Swarm has stickers. But back then we called them markers, little icons on the map, and leave messages and that was a lot of fun. Uh, I was never able to figure out how to turn a business into that. But then I also worked on local search at a Yodle, which was a search engine marketing company that I did after Wireless Generation. And so I had a little bit of experience there and I had some interest there. And so, and I got with StickyMap I really got a kick out of building something like a consumer application that a lot of people were actually using. Not that a lot of people were using that, but you know, my friends were using it. So that was kind of exciting.

    Max Sklar
    I discovered Foursquare in the summer of 2010. Uh, the way I discovered, actually discovered it through a class that I was taking, it was called electronic communities. It was at Stern and I was assigned to work on a local business in Nolita on how to get their word out on, on the Internet, on social media. It was like a women’s beauty salon in Nolita. They did like the nail polish art. So I was like, I don’t really know too much about this, but I’m going to give it a, I’m going to give it a try.

    You know, we’ve talked about Facebook, we talked about Yelp and I looked at Foursquare and I was like, oh, this sounds really interesting. Are these the people who are like competing to be mayor of, you know, the different locations around the city? Uh, I think I like overheard something about that in my internship. So I decided to look more into it. And as I looked into it, I was like, oh, this is what I should have been doing with StickyMap. You know, this is why, you know, Yodle’s product was not, was not as inspiring because it was, it was an enterprise product. It wasn’t really a product to be the world’s best, a local recommendation engine, but you know, what Dennis Crowley had done, and the team at the time had done with Foursquare was just really interesting. They made it a lot of fun and I was like, this is the way to go.

    Um, and so I saw Dennis give a talk at NYU and I tried to talk to him in person, but he immediately got swarmed by a bunch of groupies asking questions. And so I just got his card and I emailed him later and it’s kind of embarrassing email because it’s about like, you know, it’s, it’s much longer than I think an email should be. But then he writes back and he, and one of his questions was, are you like a machine learning superstar by any chance? And I was like, okay, well, I guess this is, I’ve got to say yes, right. I’ve got to say yes.

    Host
    It sounds like the innovations you saw at Foursquare where he figured out relative to Yodle, right, was he figured out how to make this a consumer-facing rather than her a business product. And the gamification aspect made it appealing. So people were participating, which was kind of the product question you hadn’t been able to figure out with StickyMap. Right?

    Max Sklar
    Yeah, yeah, that’s exactly true. And I mean, Yodle wasn’t trying to be a consumer app and that was one of the things that was maybe a little bit frustrating to work on it because, you know, of course it was shut down a little bit after I left, maybe a couple of years after I left. But it was just like, you know, the purpose of it was to drive leads to their clients. So it was never going to be the, you know, one of the greatest recommender systems in the world. I hope I’m not throwing them under the bus too much, but it’s just, it wasn’t, the purpose of the product wasn’t to be the best recommender system, whereas Foursquare’s was. So I think with my experience on StickyMap and with Yodle, I was able to identify the Foursquare product more readily than maybe other people could.

    Host
    Right. And you could see the strengths and sort of the cleverness of the fit found in the solution they had found in the market and you’re like, yeah, this, I’ve been in this space and this is solving these problems. And it makes sense. And I think this can work. And early too. So for people who maybe didn’t use Foursquare in the early days, this is like what, seven, eight years ago now already and in its beginnings, it was this idea where you would go to these different places and be the first right and kind of just say, I’m the mayor of this place. And so there was this gamification aspect that drove usage. And then the second thing people are doing right from the beginning is sort of posting where they were and it was this sort of peer to peer network of all your contacts so they would know where you were. To facilitate social interaction. Is that an accurate description?

    Max Sklar
    Yeah, yeah, that is accurate. And we still do that. We still have our swarm app, which is the app that we have that does, you know, that’s the gamification aspect of it. That’s where people check into places, tell their where they are and they 
 there’s kind of games and stickers and mayorships and stuff. And the, one of the things that I added as like a hack day project a couple of years ago was you get extra points in Swarm if you actually created the venue and added to our venue database or if one of your friends did or one of your friends of friends did. And so the reason why I like that is because it encourages people to add places to our database and be first. So I’m always really excited from the first one to like a grand opening of a place and then I add it to the Foursquare database and then later on I see, oh, you know, a thousand people have checked it.

    Well maybe I haven’t gotten anything that big, but maybe like 300 people have checked in there. Wow. And I was the one who created it. So I get kind of a kick out of that and then I kind of see and then sort of, I see sometimes my friends, you know, created the bagel shop down the street and I was like, ‘What? You made this place? No way.’ You know? So that’s always, it’s always a lot of fun. It kind of encouraged people to create the database. So it was sort of a fun way to get the power of the crowd, which we, was kind of, we talked a lot about back then, but it’s hard to actually get the crowd to work together in a productive way.

    Host
    Yeah. And it’s, in fact, as you were saying that, I was thinking the same thing. It’s hard to think of another Internet business that really you could argue solved the or, or figured out a way to tap into this crowd-sourcing idea very concretely earlier than that. Like they really did help sort of figure out that model, right?

    Max Sklar
    Yeah. I mean, one example is kind of, you know, Wikipedia maybe,

    Host
    Well, Wikipedia is a much more, it’s a much more narrow participation model than like the Foursquare model is actually the social graph model. You scale everyone, you get everyone to participate, you get this entire social graph to participate, and it keeps scaling. Uh, and they’re, and they’re not just talking to each other, but they’re building up the value of the data that they’re providing you. It is actually essentially feeding back to them as the value they’re getting from the service. So this was kind of a really good fit for you in terms of you found a place that saw the world and you could say the same way you did where they were looking at this open-ended problem and had to actually devised a product which could itself help them evolve toward solutions, toward features that were valuable to the customers, toward a circular interaction with the customers. And really it’s become a platform, right. For multiple products. So, that’s really interesting and I can see why you stayed there all this time. You know, maybe this is a good way to segue into kind of how you, you could, maybe we can talk about it through some specific examples of things you’ve worked on there, but how your approach to machine learning has changed, maybe what you’ve learned. And then back to our original question, how the world has changed around you, how the field has changed around you.

    Max Sklar
    Yeah, well, definitely in terms of just having experience building and shipping machine learning models. Um, you know, one of the things that I have to be careful about, which is probably the same as general software engineers too, but for some reason I feel like it’s a, it’s an even bigger problem when you’re working on machine learning models is you know, these kind of what we call rabbit holes that you could fall into where something’s not working quite right. And then, you know, you spend months and months trying to fix it and you’re trying to fix this one thing and you sort of lose track of the big picture. And it’s not something that, it’s not something that’s easy to identify when it’s happening or it’s not as easy to identify as you as you would think it would be.

    It’s like, well, wasting three months of time. That sounds like, it sounds like it would be easy to identify. It’s usually in hindsight it’s very easy, but it’s, there’s a lot of, you know, well, I just want to add one more feature to my model or I just want to, you know, make it a little more sophisticated. So it could capture more and which are all good things to do, but you do need to zoom out from time to time and figure out, okay, what is the problem that I’m trying to solve? We constantly asked that and then what’s the best thing I need to do next to solve that problem? So that’s just something that comes with more experience and screwing up a bunch. And I think it’s something that’s true for software products in general, but 


    Host
    Right. And, and this, I was going to tie this back to two things you said earlier. So one is the open-endedness of the problem and then the other is the objective function, the definition of a correct objective function or a useful one.

    Max Sklar
    And then being able to ship it. Like oftentimes you get a model that you really like and then you want to deploy it in production. It’s like, okay, that takes a lot of other work. A lot more work than, than you would think.

    Host
    Yeah, that’s been a lot of emphasis in the field and in the service cloud services the last couple of years is, you know, these solutions for production scale and production deployment and, and the, the idea of, you know, how do you train against huge datasets and then make predictions very quickly against the model in production. These are very different use cases, right? Kind of coming from the same source. So it’s a really, it’s a lot of challenges there. Right?

    Max Sklar
    Right. I want to get something deployed nice and early because you know, then you know what the problems are going to be in terms of deploying it.

    Host
    So, interesting. So you feel like you’ve gained experience in being able to, define the problem more clearly and define objective functions more clearly and be 
 and, define what is, what is the correct place to sort of, what is the correct kind of quality level set of features to reach, to be able to ship as early as possible. Those are things you feel you’ve gotten better at through experience. That completely makes sense.

    Max Sklar
    Absolutely. Yeah. And I, it’s interesting now that you mentioned it, you know, defining the objective function is one of those things that, if I were to make a prediction about the future of AI, when people think, ‘Oh, AI is just going to take over and there’ll be no jobs for humans,’ I think defining the objective function, at least at the highest level, is always going to be, the human, you know, that’s the human job.

    Host
    Right. And, and if you look at the extremely successful current examples, and then now we’re absolutely in a danger zone of being futurists and looking stupid later. And me speaking from 


    Max Sklar
    I do that on my show all the time. So I mean that’s one of the things that I do a lot and, but it’s, well we can talk about it later, but it’s, it’s sort of one of the things that I want to try to do, make predictions. And one of the great things is you can go back later and see where you went wrong and then hopefully do better in the next round.

    Host
    If you look at the current examples there, like Alpha Go and a self-driving cars let’s say, the objective function is 
 first of all, the objective function in all games is predefined and, in a certain sense, trivial, right? And in, in self driving cars, there’s a lot of complexity, but the higher level objective function is essentially trivial also. Everyone can describe what happens when they get in a car and go from one place to another, and why they’re doing it.

    Max Sklar
    You know, the, the types of risks that you can and can’t take is a very open question. And I mean, we still need humans to solve all the other problems too. That’s not automated yet either, but, but the objective function I think is it would be the last to go.

    Host
    Right. I see. Right. That’s sort of the codification of the human goal that the system’s trying to achieve.

    Max Sklar
    Right. And I don’t think, yeah, and human goals are very complicated. It’s, again, like I said, it’s an arms race. So as the machines get more complicated, our goals are going to have to get more complicated.

    Host
    Maybe we could also talk a little about, uh, was some changes in the field at large that have happened around you and you know, your perspective on those. We were talking before we got started about your title as a machine learning engineer relative to data scientist and that term has arisen in the last few years of what you may be see are the differences between the two. You know, some larger changes you’ve seen in the field. Maybe it would be an interesting way to go on this from your point of view as a practitioner for seven years and having had the same title and having have this title of machine learning engineer, all of which are relatively unique attributes from which you can speak

    Max Sklar
    Right, machine learning engineer really isn’t my official title. It was just when I joined I wanted to have a good way to, something to put on my LinkedIn page that would describe what, accurately described what I was doing in relation to what I was doing before. So it was like, okay, I’m still an engineer. I’m still doing the, I’m still doing the server side work. I can still ship my code, but I am sort of specializing a little bit more and building machine learning models and you know, solving all of the types of problems that go along with that. So that, that was just that, I don’t know if it was a description that was popular back in 2011 when I added it. I kind of just made it up, but now I see it all over the place.

    So either it, it was there or it was just, it’s, it’s gone from sort of made up to real now. But it was really just descriptive and we were hiring for a data scientist at the time. And so what, what is the difference between the two then? Right. I mean it’s, it’s always, I don’t think, I think every company does it differently, which is really hard because when you post something for data scientists, you’re going to get a lot of different types of people. So there’s sort of the data analyst role, which is someone who doesn’t necessarily go into the, your backend server code all the time. But, um, what they do is they take a lot of your data sources and they might go like in the middle of your data pipeline and take some of your data sources and they run analysis on that offline.

    Um, and so, you know, a lot of them will use R and Python as well. And they’re oftentimes really important people to have at your company. We have a bunch of them and they sort of, they can diagnose problems really well and they’re actually more like scientists in the sense that, you know, they’ll, they’ll go through the scientific method, you know, they’ll come up with a hypothesis. They’ll test it by writing some queries on the code and then they’ll, they’ll see if that’s a, that’s right or wrong. That’s, that’s sort of one role. And then you have my role, which is more of a machine learning engineer where you’re actually, you know, like I said, building, building the ML models and, uh, and deploying them. Um, and the other one is sort of a data engineer who just takes the entire data pipeline and make sure that the pipeline is a whole works, kind of deploys our technology, whether it’s, you know, MapReduce or Scalding or Spark and, you know, they’re doing a lot of server engineering and a lot of, I mean, it’s not like, you know, I’ll build the, I’ll build the pipeline and write the code for it. But there, there are a lot of people who were working on that stuff who don’t necessarily get into the machine learning stuff, but they understand kind of how much, how much memory it’s going to take and how it’s deployed and where it fits into the whole system. So, I mean, all of those people, all of those groups are in roles that are kind of similar and sometimes you have to do all three jobs. But, um, I think that that the role of data scientist, if you’re hiring for data scientist or if you’re applying for a job as a data scientist, you have to ask very clearly. You know, what the mix of those tasks is going to be, and try to find out what the company actually needs.

    Host
    Right. So it sounds like you’re saying it’s multidisciplinary and different companies kind of have a different idea about this or different emphasis. Yeah. Right. That makes sense. Because you need all three of these aspects.

    Max Sklar
    Yeah. And they’re, they’re probably more than three. I probably shouldn’t do 
 that was just three that came to mind, but 


    Host
    No but then it’s like, okay, so there’s like qualitative understanding of the data, right? And a set of goals and business goals you want to achieve, by, from, from the insights you can get from the data, right? Uh, what are the features and then what predictive value do they have? What, and then of course, what do we want to predict? So there’s business goals there, right?

    Max Sklar
    Yeah.

    Host
    And, and, and an understanding of the data as an asset to achieve those goals. That’s kind of the first piece. You were describing the second piece of someone with, uh, the mathematical and algorithmic expertise and machine learning experience you were describing that you’ve gained to, you know, turn that into an objective function and a learning system, right?

    Max Sklar
    Yep.

    Host
    And third piece you were describing earlier and then return to again is how do we make this repeatably deployable, scalably deployable and run, run reliably and run every day and being able to add new pipelines. How do we integrate all the data we need at scale and how do we make this something that runs really smoothly for everyone else so they don’t have to care about that? Right, right. So maybe this is a good chance to, uh, switch gears a little and we can talk about your podcast. So maybe just start with what motivated you to start to do that? What, what did you think sort of you had to say or add to the conversation? You know, what interested you about pursuing that?

    Max Sklar
    I have given a lot of talks and kind of done some instructional videos and conference presentations in the past. But it was always, it always had to be in front of a very specific audience and it always had to be, you know, about a specific topic. And I wanted to put something out there where it was a little more free to explore, you know, different issues that are, I am passionate about or interested in and to kind of do it weekly and build kind of an audience that is really interested in new ideas, and I want it to be kind of interactive. So I want to have an audience where I can put out ideas and get lots of feedback. Go back and forth and kind of just to join the marketplace of ideas, I guess.

    And I think, you know, a lot of good things are going to come out of it and I think me and my audience are going to learn a ton of stuff. I think that, from each other, I think we’re going to figure out how to express our ideas better. I know I am and my audience and my, my group of guests. And I hope that in the future it sort of inspires people to, you know, to execute on some of, to execute on some of the ideas that they’ve, that they got from listening to the show. And I’m trying to interview people who are building stuff that is, you know, either interesting or some entrepreneurs or someone who looks at a problem in a little different way that you wouldn’t think about otherwise. And you know, as the title of the show is “The Local Maximum,” which kind of suggests that you want to get out of your funk, you want to, you know, you want to find something new, you want to find the better hill to climb. So I’m, I’m trying to build kind of a show in a network of, of audience members and listeners that we’ll do that.

    Host
    And is the focus on the same kinds of open-ended machine learning problems that, you know, have you been interested in in your career?

    Max Sklar
    Yeah, well, I, this is, I feel like I can leverage some of the stuff that I’ve worked on, you know, in the last decade or so. And so I have, I mean, I kind of compare it to the show that I had as an undergrad when I was at Yale. I had a radio show for two and a half years, like from 2004 to 2006. And I go back and listen to it sometimes and uh, cause I was pretty good. I had some, uh, I, it was pretty entertaining. That was called “Max and the Wiz.” Um, and it was all, a lot of it was, current events related, whether it was national stories or just stuff that was going on, on campus and in the school. And one part that we did was we would do a science and technology news segment from time to time.

    And so that I kind of want to go back to and see what we were talking about then because I’m pretty sure I covered self-driving cars in 2005 and so it’d be interesting to see what we said. I’ve always been much more natural in the audio medium and so this was just a good, a good way to start that. I had so much fun doing it. And so that’s just how I knew that this would be a good way to, you know, to, to build those ideas and get that content out there that I want to.

    Host
    You had a sort of specific angle or area that you felt could add to the conversation.

    Max Sklar
    Yeah, yeah. And that’s the difference between then and now. Then I was just kind of making it up as I went along, which was, which was fun. It was a lot of fun. But now I actually have, you know, a little more knowledge yet 


    Host
    You attract an audience in a sense because they have an idea of what this is and what they can expect.

    Max Sklar
    Yeah, yeah. And it’s coming back to the name, “The Local Maximum,” why I picked it. It’s kind of a triple, triple play on words there because you know, a local maximum is something that we talk about in machine learning and data science. That’s when, you know, you have a model that is trying to get better and better and then it reaches the top of a hill where any direction that it goes in, it gets worse. So it kind of stops and says, this is, this is as good as I can get. I’ve converged, you know, but then there’s a, it’s actually you’re in a local maximum. It actually has to get worse before it gets better. It has to explore different ideas and that’s a problem that comes up in machine learning. But it’s also a problem that comes up in product design and in entrepreneurship and in, in marketing and all these different areas you get to a local maximum.

    And the way to get out of it is you kind of have to stop what you’re doing. Stop climbing that hill and just pursue new ideas and trying to climb a new hill. And that’s you know, that’s what I’m hoping to encourage people to do by listening to all these interesting people that come on my program and to throw out ideas that are maybe partially baked that I’ve been thinking about for a while, but I haven’t shared publicly yet. I feel like I have some good ideas, but I don’t verbalize them for years and years. I just kind of let them sit in my brain and I don’t verbalize them because, you know, I feel like they’re kind of half baked or no one’s going to get it. And this has been a good opportunity to just, you know, go for it, spit it out, see what happens. And I feel I want more people to do that.

  • Episodi mancanti?

    Fai clic qui per aggiornare il feed.

  • Show Notes

    Topics: Ad Tech, Career Advancement, Career Responsibility, Case Studies, Failure and Learning, Founding/Startups, Managing Engineers, MBA, Product Development, Social Apps, Team Leadership, Virtual Reality

    Companies and Organizations

    Datamarx Majikal Steams Truffle Flurry Goldman Sachs Publicis RUN New York University - Stern School of Business

    IntroductionA veteran founder of multiple app-based startups and an experienced engineer, Shashank Singh finds himself embarking on a new chapter as CTO of New York-based startup Datamarx. There he can establish an engineering culture and draw on his engineering experience, startup lessons learned and MBA training in entrepreneurship from NYU Stern. Singh looks back to reflect on what he has learned about building apps, growing a product by delighting and retaining users rather than relying on social hacks, and why social apps are meaningful to us as social animals. And he looks ahead into the future, asking himself about the purpose and meaning of his work and why he works on what he does. He also discusses what he learned about ownership and responsibility at the large and disciplined organization Goldman Sachs, the differences between working at large organizations and startups, and how engineers can maintain a healthy career track by learning more about business and pursuing varied technical work. Singh doesn’t shy away from either ambition or sincerity. Why are we doing what we’re doing? Should we be doing something else?

    Guest Bio

    Shashank is currently CTO at Datamarx and is helping build a unique data marketplace by connecting brands directly with the users. Prior to joining Datamarx, Shashank was VP of Engineering at Publicis Media, where he helped lead the development of their proprietary Data Management Platform (DMP) and built their data pipelines. As one of the first employees of the Flurry’s Ad team, Shashank helped launch one of the world’s first mobile-centric RTB exchanges. After Yahoo’s acquisition of Flurry, Shashank worked on the integration of the Flurry’s platform with Yahoo’s AdServer technologies and also helped integrate BrightRoll into Yahoo’s platform. Prior to Flurry, he was a Lead Technical Engineer at Goldman Sachs, where he led a team of developers in architecting and developing the firm’s OTC derivatives trade flow systems. In his free-time he also co-founded three mobile start-ups: Truffle, Steams and Majikal. He has an MBA in Entrepreneurship & Finance from NYU Stern and B.E. in Computer Science & Engineering from MMMUT, Gorakhpur, UP, India.

    Links

    Twitter: Shashank SinghTranscript

    Host
    Hello and welcome to “Using Reflection”, a podcast about humans engineering and we’re here today with Shashank Singh. We’re going to talk to him about some of the entrepreneurial things he’s been doing, different startups, some of them with a social angle and, I also wanted to talk to him about the fact that he’s both a talented engineer with a lot of track record as a contributor and manager, but also a graduate of the MBA program at NYU Stern with a degree in entrepreneurship. I wanted to talk to you about the difference between running startups, trying to start startups and learning about how to do that. But why don’t you go ahead and give yourself an introduction, tell the audience a little about yourself and then we’ll get into the conversation.

    Shashank Singh
    Thanks Mark for the introduction. I’m Shashank Singh. I’m currently CTO of Datamarx, a New York-based startup, and in my past life I have done a lot of startups. Like I have started three of my own startups. I’ve worked for startups like Flurry, which was acquired by Yahoo. I worked for an RUN Ads, which was acquired by Publicis. Yeah, I’m a technologist, and I also did my MBA. It has helped me quite a bit to understand the business side of things.

    Host
    So maybe let’s start there. Why did you feel the need to get deeper knowledge on the business side and how do you think it’s changed your trajectory or point of view or had an impact on you since then?

    Shashank Singh
    Being an engineer, you always wanted to build something new. Most of the jobs I was doing before pre-Mba and my past life was like, you join a company, you have a product already there or it’s half-way there. They’re really some green green projects. You wanted to be entrepreneur because I wanted to make from scratch, so yeah, I decided to get my business degree just because after doing my stuff, like I tried building my own small 
 like I ran, some blogs, also news blogs. Being a technologist is OK, you can build a product, but how do you actually take it out to the market? How do you actually think about what’s the need of the market? How do you study the market, how do you do the first sales kind of things and learn all those kinds of soft skills and even hard skills of understanding the financials of a compan? When you’re running a company, you need to understand the financials. You need to understand a lot of things. You are wearing multiple hats every day, every hour. I think. So kind of MBA gave me that rounded knowledge around things where I can understand things. I can know what people are talking about and not be siloed along the technology. Because I’ve seen engineers getting deep into the technology stuff and they are doing. I mean, it’s good for everything that getting deeper and deeper into technology, but they sometimes lose the vision of why actually they are doing something. It’s my personal opinion that we 
 as an engineer we are just an enabler of a business. Like we enable, we solve a problem which is mostly a business problem or some kind of problem. Or if you make a business out of that, like Facebook or anything like technology is an enabler. You find the problem and you use technology as a tool to solve that problem.

    Host
    So it sounds like you became more interested in the context and more interested in trying to understand what problems need to be solved. Right.

    Shashank Singh
    That’s definitely there. I mean I had the skill set of building things. I was very confident that I can build but I was not very confident about like if I go out in the market, I want to be a leader, I want to be an entrepreneur, then what should I do? So doing an MBA was kind of a way of taking a shortcut maybe to learn things. And I can get more deeper details into that. Like one of the examples would be like you do a lot of case studies in [an] MBA [program], and what do you do in case studies is that you study all the companies which have failed, which have a success based on certain scenarios and all those things. And you’d discuss among the friends like what do you think worked for that company and what didn’t work for that company. You learn a lot from their experiences with those case studies and then you have a certain set of tools in your 
 It’s in your brain like OK, what might work and what might not work. So if you do enough case studies of like 20 companies or 30 companies, then you can definitely get into the habit of thinking critically. Like right now I have right now the reputation of like when somebody comes with an idea I most most likely kill it. I would say “No, it’s not solving a big problem.” Because I have failed myself multiple times. I’ve done my MBA where we have studied a lot of companies [and] why they have failed. When you come to me, I would most likely kill it. If you are still having that urge you want to develop after talking to me, then I would definitely say go for it.

    Host
    So I noticed all of the things you listed at the top of your LinkedIn are all of these startup things, right?

    Shashank Singh
    Yeah. Like I would say the startup bug actually started from 2008 or something, when the whole Apple ecosystem didn’t even come up. Actually it was coming up in 2008 and I started working on a 
 I got into IOS APIs and all those things and that made me very curious about like let’s build some system. And I was working with one of my cousin actually we were trying to make something. That’s where all the entrepreneurial bug started biting me actually. [Laughs] And we’re thinking about all the crazy kind of small ideas which we can actually work on your own and launch it. But then I got into finance, Goldman Sachs, which is very demanding the working there. I was there was there for four years and also did my MBA there, [so] I couldn’t give too much effort to my entrepreneurial efforts. But later on, like a, I developed an app called Magical along with a few of my friends and it was collecting all the events all around your city or your location. It was a a location-based social events app. So when you open the app, you can see what’s happening in and around your city, you can search by keywords and all those kinds of things. You can save that event, invite your friends and all those kinds of social aspects, were built inside it. And our long-term goal in that case was like, I wanted to be Google of events, actually. I wanted to cover all the events going on in the world. And we are pretty good at it. We were collecting a lot of events based on different types. Like there were Meetups, EventBrite, there were all the ticketing sites, all the concerts and everything. We were indexing it properly and it was working good. It’s just that like I’m more of an engineer than a marketing genius or something like after a few years of keeping it up and running, my partner’s got distracted in their life and everything happened there. So that kind of stayed there and I had to shut down a year back. Then there were other things like Steams. Steams is a social network, anonymous social network. There are tons of them [now], but when I started working on it there were none. [Laughs] But by the time I launched it, we had Whisper in the market, we had Secret in the market and we had 
 later on came YikYak and I was like, “Oh crap, this is like 
 this market is now too crowded actually.” And again, my marketing skills were not good enough to actually market it out to a large group of people.

    Host
    That market was both crowded and had a lot of controversy around it.

    Shashank Singh
    I mean, you can still see 
 we still have Steams up and running. I actually don’t spend too much time on it, but it’s working actually. It’s there, people download, do some crazy stuff there. I won’t want to get into details of what people do there because it’s anonymous. You can imagine what happens there. [Laughs] It has kind of become a dark alley of the web, of the app site.

    Host
    That’s awesome. You created your own little dark web. You should be proud. Right?

    Shashank Singh
    [Laughs] And keeping up is not that expensive. So it’s like spending less than 100 bucks [per month] to just keep it up and running because I really want to get back on it sometime when I have some more time and have some ideas over there. So I’m just keeping it for now.

    Host
    Where does that benefit from what you learned in school and where did 
 how far did it take you and then where did you hit the wall and you have to learn completely new skills that you need when you’re actually starting your own company?

    Shashank Singh
    Yeah, I mean, all the case studies 
 like one thing I can say like doing it by yourself is a different ballgame altogether. Like when you do it like you realize that you don’t have 
 you have 
 if you have not raised money, or even if you have raised money it’s a different story, but if you don’t have money then how do you actually market yourself? Or what tricks or hacks can you do to actually get your name out there on a dollar budget, for example? Like you don’t have that much money then what you do? So I can give you an example like for Magical when we launched that I didn’t have any marketing budget. Like I didn’t have much actually. So I didn’t do any marketing. It was more leveraging my current social network I have. And I decided doing little bit of ASO, studied how Apple search works. I mean believe it or not without doing any kind of advertisement or any kind of even posting on Twitter or Facebook or anything, I was getting like 40 to 50 downloads a day without doing anything. And I have worked with legit companies which have a marketing budget and they are not able to hit that number.

    Host
    So that was all through trying to optimize your results in Apple App Store search?

    Shashank Singh
    Yeah. Yeah. That is one of the things. And then you try to build the app in such a way where you can actually have some social aspect that tries to spread itself without being spammy, for sure. What people forget in life is that you get too involved in technology and you forget that that technology is an enabler of business. Technology is enabler to make you happier than actually getting too involved in that.

    Host
    My general attitude toward this is that, you know, we, what’s meaningful to us as people is how we affect other people, how we interact with other people. You know, the emotional truth of our experiences and, even in such an analytical profession, I think that all those aspects are still really important and that also we do engineering because like you’ve been describing, you believe it has an impact on the world, not just as an abstraction. So returning to the social idea. It is something I really wanted to talk to you about because I noticed several of your businesses have a social aspect and you just talking about how social marketing, I guess you could say, you were able to organically grow the usage of this app. So what, you know, do you think that that’s essential really to any, sort of a consumer startup these days or you know, how important do you think social is? Do you think it’s just table stakes and then do you do it just because it’s helpful to market or is there something inherently interesting to you about social, you know, when you want to do social products because they’re interesting.

    Shashank Singh
    That’s what we were taught in biology actually like humans are social animals and it’s very ingrained into our DNA that we actually talk to people, we interact, and we have some kind of social experience. So it’s a very natural actually that social network is playing such an important role right now. I mean I have other thoughts about current social network things. If you’re on the consumer side, you need to think about like how socially beneficial your app is, what problem actually you’re solving or what 
 how you’re helping people to actually communicate more or do something meaningful, or even having a fun app. Actually, it’s, that’s, that’s also fine actually if you’re making a fun based app actually, but then you are solving a problem of like when somebody is bored or doing something and you’re adding some kind of fun in his or her life. Going back to the social aspect of it, I think that’s how I came up with all the ideas like I have. Does he like to meet people and like to talk to them? So what do you do with your friends and family? You actually plan out things and you plan or things as like, let’s go to that event. Most of the time it happens you I come to know of an event when it has already happened. That’s where Magical can in. Like I wanted to make something and the name Magical was more about let’s create some magical moments with your friends. Most of the magical moments are when you’re at the concert or you’re at an event or something. I don’t think you can, you can think of an app which is not social anymore actually. Like you have to have some kind of social aspect to it. Not just for the essential, for your growth. I mean that’s one of the things, like you will probably not grow if your app is just siloed.

    Host
    So what about when you’re in a crowded space or a space with really established deep-pocketed incumbents? Like Truffle? Maybe tell just to give a little context, could tell people what Truffle did and maybe what were some of the challenges there with some of the competitors.

    Shashank Singh
    So Truffle is an app where you can actually share your best restaurant with your friends and you can plan out and you can go and have a chat, and chat is built inside it, but it’s all about sharing your favorite restaurant to your friends. The problem was like when you go to Yelp, you see all those ratings and you don’t know how good those ratings are or not. You don’t even know what that person likes actually or dislikes because everybody’s taste is different. But you know, your friends like whom you hang out with like what kind of food they like and what kind of things. So you can kind of rely and trust on that friend. Or like if you’re going to a new city. I traveled to San Francisco and I know a friend who has been there or they lived there. I can just ask them and they can answer there. You don’t have to experiment anymore. You don’t have to actually go to Yelp or Google Maps and look at the star ratings which can be hacked and which has its own downsides. Well, so many people are actually asking like, “Hey, I’m traveling to this place and do you have any recommendations?” That’s the problem we tried to solve and have a place where you can actually store your list. You can save on you add your things. So automatically I feel like I’ve added my favorite restaurants in New York and a friend who was visiting New York, he doesn’t even have to ask. Like if he opens the app and then New York and then he will see all my listings there. They’re right there.

    Host
    I see. So the idea is 
 you’re not as focused on mass scale but rather much more high quality recommendations because they’re coming from a known network

    Shashank Singh
    Yeah it was a little challenging also, like the network effects as everybody knows, like the experience 
 we still are kind of a little bit struggling with the experience of a single user. Like when you, if you join us as a single user and you will have no friends in the app, then the app becomes a little 
 I will say 
 like we have featured places and all those things we built around that, but it’s not as useful as when you have like say 20 friends. 20 friends is good enough actually and you can have really good experience in Truffle. That’s the thing we are working on and that’s what we want to solve. It’s not an easy problem to solve. We are very conscious about not being spammy and we are like, there was so many opportunities. We have so many ideas we could have kind of spammed people or something, but we are 
 I mean we are very ehtical on that side like we don’t want to actually spam people without their permissions or like, like 
 when you join Truffle, you have to give access to your Facebook or contact list or something. But a lot of companies have been built on hacking those things. Like getting the list of people and doing all those crazy stuff. You would have heard about them and we said, no, either we do it in the proper way or we don’t do it. It will be fine to close down the company but not go that route.

    Host
    Right. So this is interesting because you brought up this idea several times and there’s such a focus, you know, I did some other interviews where this came up, like I interviewed someone who had 
 Andrew Marsh who’s CTO at interviewing.io now, but he previously worked on Facebook games, for example, and a lot in the gaming industry. And he talked about how that whole industry became really focused on optimizing to capture and retain peoples’ attention. And that’s a nice way of putting it, you know, I mean, the not as nice way to put it as just to call it addiction mechanics, which is what it’s called in the industry. So it sounds like you’re very conscious of the value of what you’re delivering to people and that it’s 
 you’ve mentioned that, you mentioned that it’s actually solving a problem for people and you mentioned that you’re judicious, careful about sort of how much pressure you put on people, right, to you to use the app. So why are those things important to you and do you think that you can still succeed in scale and like be a good citizen?

    Shashank Singh
    I mean for me being a good citizen is the first and foremost thing. Like a lot of people actually do it going away 
 like “Let’s do the hack for now,” don’t tell anyone about it, and then get discovered, “Oh we are very sorry about this,” and you have seen 
 I don’t want to name the companies, but you can go 


    Host
    You can go down the route of it’s better to ask for forgiveness than permission. Right?

    Shashank Singh
    I have heard it so many times an I would be like “No, I’m not going to allow that.” Yeah. So I mean yeah it’s a life choice as you do actually, like I want to sleep better at night. And so that’s one of the things 


    Host
    Right and I think, you know, you may maybe early in this, but, Like if look at advertising online advertising, which is an industry both of us are familiar with, we worked together briefly in that industr, you can see the big, big shift in the last several years of awareness in the big advertisers of some of the issues with quality, a much greater demand for, you know, better quality, better ethics reall, you could even say, and I think you’re also seeing a lot of backlash since the election and so on about some of the, you know, maybe less beneficial to society aspects of social media. Right? You know, what happens with technologies I think is that we get more 
 we learn to live with them better. We learn how to use them better. You know, in the beginning you’re hitting yourself on the thumb with a hammer a lot. And I think the next generation or two as they grow up with mobile and social, you know, learn to use it in more beneficial ways more of the time they’re using it. And so maybe you know, you’re just, things will catch up to you to people like you are making that decision consciously now.

    Shashank Singh
    I’m in here for a long term actually. I’m a very long-term vision person actually. Like I don’t care about short-term things like I don’t want to succeed in like three months and then die down. If I survive, if I live, I’m here, I’m here for the long, long, long game actually.

    Host
    Okay, that’s interesting. So then do you have like deeper values or like a larger arc that you see yourself traveling on with what you’re doing with these companies and you know, what you’re pursuing professionally?

    Shashank Singh
    A lot of times I think, “Well what are we actually doing in life?” And then think about like is this necessarily to do or not. So I always have that battle inside me going on where I’m thinking like, “What are we doing, actually?” So 
 [laughs]

    Host
    Yeah. But that’s the same question you were asking about the apps really, right?

    Shashank Singh
    Yeah, exactly. So that’s, that’s the question I keep on asking myself. Like is this like what you were 
 you really want to do actually in [the] long term? So Truffle I definitely want to do it long term, like we are in a long game. Same goes with Magical. Like I had to shut it down because of various reasons, but I believe once I have a little more time I will actually revive it back because I still don’t see a product which actually solves that problem.

    Host
    The challenge there that that problem may be more most easily solved by, I don’t know, a Google, like someone was very big 
 ability to build big data sets over the whole Internet. Right?

    Shashank Singh
    Yeah. Definitely like when I was thinking about it and 
 now I have a different approach of doing 
 I would take a different approach to do that thing, because technology has evolved. Like you talk about NLP, you talk about AI, you talk about machine learning stuff. I definitely want to add those kind of things inside my 
 all my previous efforts, because I see that is one thing which was lacking there and now if I add that thin it might be actually really useful.

    Host
    Sure. But I guess the contrast I was drawing was something like Truffle, you actually are taking advantage of the fact that it’s starting out with a more boutique idea. You’re like, the value of the product is in the actual direct relationships between the participants, right? So, so that’s, you know, in a certain sense it’s not an opportunity big enough at the start for a huge company to go in and get, and you have all 
 you can do it at that scale and the advantage you have is that you’re actually delivering something really valuable to passionate users.

    Shashank Singh
    That’s my life-learning also, like what I have learned from all my efforts is like we worry too much about growth and if somebody asked me like how to grow, I think you’re asking the wrong question. Like a startup should never worry about how to grow, in my opinion, the first to be the first phase of their life. Actually, they should never worry about how to grow. They should worry only about one thing which is very critical, is retention. Like how do you retain the 
 if you get one download, how do you retain that guy? Or that girl? How do you retain? How do you actually make the time they spend in your app very valuable so that they come back again. That’s the key. That’s the holy grail of actually any any APP, any idea, anything you are making. If you can do something like that, once you nail that down, you know your audience, you know what they need and you get them hooked into your app. Not in a bad way but in a positive way. You’re adding some positivity in their life by doing something, not making them addicted, but if they think about it, for example, like for Truffle, like if they think about restaurants and they think about friends, Truffle should come in first thing in their mind instead of Yelp or anything else. Once you get that thing nailed down, that’s when the growth comes into the picture and the full growth. If you have a very active set of users or even if it’s like a hundred users actually and they are very hooked. They’re using your app and they value it a lot. That’s when you start thinking about adding those growth features into the app. First nail down the first thing and then growth can happen.

    Host
    So does that connect back to the social media marketing? Like how do you 
 how do you add growth features that then help it go viral?

    Shashank Singh
    Make it very easy to share things, so there are a lot of things there like sharing and chatting is definitely there. You can actually build chat inside your things, or if not, then make sure it plays very well with the currehnt chat services, Messenger or iMessage. Make sure your links when you’re sharing that links have enough information and it has a preview and all those kinds of things. Make it very easy to share. When you share on Facebook, it adds some value there. Don’t rush into things. I would say take one thing at a time and nail it, and then we’ll do the next thing. A lot of startup founders they do is they want to build the Titanic on the first day and they get lost. They take years and years to develop that thing and then by the time they launch 
 I have done it personally. So speaking from experience, you’re late into the market, or the need has gone, or you added so many things that you cannot manage it. Like you cannot manage all the features because you’re cash strapped, strapped from developers, you are 
 you don’t have that many resources to actually manage things, so you are buying a bigger bite than you can chew. [Laughs]

    Host
    Right. And in fact this goes right back to what you just said previously, like if you’re always focused on what is the essence of this thing that will move users, then you’re building the right things or trying to anyway, rather than building so many different things. Like you’re building less and you’re building the right things. That seems to be the target to aim at and that’s hard to hit.

    Shashank Singh
    Yeah that’s very hard to hit. Yeah I think another thing that I would like to add is that sometimes, or I would say most of the time, founders always over-estimate the problem because it’s there bias – they think it’s a huge problem.

    Host
    Right which 
 because it got them excited enough to get started with it. Right.

    Shashank Singh
    Yeah, so bias that I see that you over-estimated the market, even if it’s a small market or a very niche market, you think this is gonna solve a problem for humanity and the fact is that only few people care about it, [Mark laughs]. Or people are not thinking that far sometimes, actually so 


    Host
    Right. I mean it can be that they might care, but it’s hard to understand. Like I’ve been at those kinds of companies too.

    Shashank Singh
    Yeah. I mean if you look, a very good example is Foursquare. The founder I mean, he launched a couple of apps before having Foursqure as a success, and when he launched the location-based stuff, like he was way too ahead of his time actually. So that can also happen like you were thinking about something which probably people don’t care, they might care after like a year or two. So 


    Host
    That’s actually an interesting example of a lot of what you’re talking about because even though when it first came out, a lot of people were sort of saying “What is this thing?” There were people who were passionate about and using it early. And that was well before it was kind of understood maybe the more broadly what the utility was and even whether there was ever going to be a business there and what that would be.

    Shashank Singh
    Yeah.

    Host
    But he stuck with what you’re saying, which is let’s make this something that these people love and that finding value from.

    Shashank Singh
    Yeah, exactly. You see now like they have been so many products, like you’re in ad tech so we both know like what kind of products they have made and it’s 


    Host
    Yeah, they’re actually public customer of my current employer. So it’s, I can even just say that we, you know, we help them directly now and you know, we help them leverage all that data that they’ve built up to use on the advertising side. So 


    Shashank Singh
    Yeah, I mean, Foursquare is one of the examples, there’s so many of them actually. Like even if you look at current VR and AR, virtual reality and augmented reality 
 I’m not taking any credit for it, but my, one of my friends, my cousin and I was actually, he founded the company for VR, and I was like “You think this is the right time to actually do it? And he was very excited about it, rightfully so. He built some cool stuff. He bought those bulky headsets and everything and I was like, I’d look at the demo, I was pretty impressed with it and I said, but do you know how many people are going to have 
 wear this headset,

    Host
    This is my take on VR too, but, but it’s like I’m just in the camp of people who don’t get it. You rightly said there’s a passionate small group of early adopters. Right. And that’s 


    Shashank Singh
    But there will become people who would stick, they will stick with VR, they will figure out, figure out a use case and they will nail it and they will survive, but 99% of the companies will actually close down and shut down because they cannot 
 they will give up.

    Host
    Right. I wanted to also talk to you about, you know, some of your more, I guess quote unquote traditional roles in, in bigger companies. The fact that you both can compare that to being 
 starting your own thing and also that you can compare kind of different roles within teams, right? Team leadership, technical leadership, architect, individual contributor. So maybe speak a little to both of those. Maybe let’s start with kind of what are 
 what are some differences between, you know, working at like say an early stage company, a later stage company and on your own and you know, maybe things you’ve learned in each of those situations.

    Shashank Singh
    Yeah, I think like working for a startup is awesome, actually an awesome experience. It’s not for everyone for sure, but what you get is actually you wear multiple hats. You decide on things, you’d talk about it and you start doing it in on the same day actually most of the time. Like you talk about things and you start doing it. Like I’ve worked for financial banks in New York and you talk about it 


    Host
    [Laughs] 
 and talk about it 


    Shashank Singh
    
 years pass by and you’re still talking about it. Yeah. So 


    Host
    
 emailing about it.

    Shashank Singh
    Yeah, emaling about it, and there will be like higher ups in the bureacracy come in and they would be like, “Yeah, I’ve been thinking about this. Let’s set up some meeting for this.” Yeah, I was, I was in Goldman Sachs for like four-and-a-half years. I mean I did pretty interesting stuff there. And they’re, of course 
 everyone has their own story about what you wanted to do and what you ended up doing there. So working in the startup is actually that exciting, but working for yourself actually trying make a startup is like, like really different than anything else you would have to think about. So first of all, like you have to believe in the idea. Second, you have to start selling your idea if you need help because you can do few things 
 well a lot of things, but you definitely need help if you’re thinking big. You cannot make one huge life-changing application. I mean everybody knows the technology 
 you need somebody who can do back end, who can do front end, who can build the app, and if you’re doing everything then instead of that thing taking a month or two months to do a prototype or something, you will take years to do that. So. So you have to sell to your friends or people you like or people you think you can work with. So you have to start selling that idea and make sure to sell enough and that they start believing and it becomes their idea. That’s the key thing. Like it has to become their idea that only the startup and only then you can actually build out the product. Otherwise they will say, most of the time you’re going to end up hearing is like, “Oh, it’s a good idea. Oh yeah, I can do something.” And then they might contribute a little bit, but it’s not that passionate, as passionate as you are. And then you will start feeling that frustration because if the passion was not at the same level then you might just seem like you’re dragging me down.

    Host
    So it’s like what you said, where you as the founder have so much bias toward loving the idea and now you’ve got 
 you’ve got to incite that passion in other people so you can get help.

    Shashank Singh
    Remember this, if you’re looking for a partner out there, make sure it’s no longer just your idea. It becomes their idea too. They’re not helping you, they’re dreaming along with you. So if you cannot get that kind of vibe or something, I think it’s not worth making them as a cofounder. Then maybe they can help you 
 get assigned some tasks and get some help and done.

    Host
    What about, you know, managing engineers and building teams. Probably something you’re thinking about, you know, as you look at the current startups and hoping you get the opportunity opportunity to do that with them.

    Shashank Singh
    Right even here 
 that’s why I joined Datamarx. It’s a very early-stage startup and I’m the CTO there so I have to build the culture and this will be my opportunity to actually instill the culture which I love and which I want to actually 
 and of course with, with the blessing of the founders. What I personally believe in is the team should be something like where like people say, but I genuinely believe in it, like everyone should be equal irrespective of you come with the 20 years of experience or two years of experience. Like people should feel equal and you having more experience should have a duty about like actually teaching people that rather than having an attitude about, “OK, I have experience. so you’ve got to respect me.” You don’t demand respect. You get respect by doing things actually. And it should come naturally from people. As far as managing the team is 
 like the best way to manage is like don’t manage them. Let them manage themselves. Everyone is a grown up. They need to understand, they really need to understand. Everyone needs to understand that you’re doing something for us, enabling the business or something. And if you’re not contributing enough. And I mean, if you have to always come back and give a feedback to somebody, then they’re not the right person. Find a way to let them go or, give them a good talk about like what you’re trying to do here. And if they are still not performing, they should go. Yeah. we should not be wasting our time in managing. One thing I learned from Goldman, a lot of good things I learned from Goldman. One thing was like, you take ownership. You start giving ownership to people and they should actually take ownership. There should be a good accountability of things. Like if you own a certain things like things go strong, somebody should not come to us and this is wrong. And you have to step up and do something. Once you build a product, you own it. You have to actually take care of is as your baby, actually.

    Host
    Right. I think of it like, at least from the engineering side, like we are the caretakers, you know?

    Shashank Singh
    Yep. So you know that that’s where like if somebody is not owning up their own shit actually the I think that’s a red flag and you need to have a conversation. I’m not rude when I talk to people. I try to be very polite and I try to sell them like why they need to step up and why this is not expected or what is expected of you.

    Host
    Do you think that changes as the size of the company changes or do you think that 
 like in other words, at a very early stage communication is very fluid. Everyone has the same context very easily. And you know the goals are very clear. And so that expectation of everyone owning, I think it’s totally realistic because of those things, because of the context and the goals are all very clear and the same to everyone. And the communication is easy. Do you think that changes as the size of the business scales?

    Shashank Singh
    Definitely yes, I think so. But I think what you can do is you can end up 
 it’s not easily done. I, hopefully I can do it 
 that’s what I think I’ve tried to do 
 is you create small teams as a startup in itself actually. So if you have that team and they have independence, then you don’t have to have a very big hierarchy also. Like you have a team which actually works as a startup, as an independent unit, and they can try to have that kind of culture inside what we’re talking about in a small team actually. So you’ve tried to build that kind of culture inside a larger company. I tried that in the companies, but of course if you’re management is not being supportive enough, then you cannot probably. You can do a little but 
 yeah, you can see 
 But larger companies, yeah, I’ve seen so much bureaucracy coming in the picture. I mean that aspect is like people start 
 people are very hungry for recognition, so people will try to grab all that engine they can and that’s where they start stepping on somebody’s toes, and that’s where the friction starts, and over a period of months and years like that friction can be clearly seen and walls build up. You try to build up walls and yeah, I mean people are trying to protect themselves actually. And it’s a very toxic culture actually. And I’ve been running away from those companies for all my life. [Laughs]

    Host
    [Laughs] Yeah, me too. Probably everyone listening also. [Both laugh]

    Shashank Singh
    Yeah, if you see that 
 Like another thing is like what I believe in is like try to change the culture. If you cannot, and if you think like it’s not worth actually putting that effort, then run away from that place. There’s no point in wasting your time and bitching about it and having negativity in your life. If any of my friends actually comes and bitch about their work to me I say “Change the job, and if you cannot change the job, try to change the place, change the culture there. And if you cannot do both of them then there’s something wrong.”

    Host
    Then just leave. Right. I think when I was less experienced, I’ve had a, I had experiences where identified so personally and deeply with the struggle of wherever I was and was so, you know, angry even is the word – passionate would be, you know, understating it. And all the things that were so wrong and 
 and that is very unhealthy. You have your ideas of what, how the company could be effective, right? And then you try to foster that and nspur that and if you can’t then you know, you can’t take that on as your own personal struggle. You yourself, one person is not going to change a whole company.

    Shashank Singh
    I think you can. I still believe in that, but you should give it a shot before you leave. In my opinion you should give it a shot to try and change it before you leave.

    Host
    Okay, that’s fair. Maybe I’m being too negative. And, and you definitely 
 like at smaller companies that are more open, you can definitely have a huge impact.

    Shashank Singh
    Don’t give up, in my opinion, never give up without trying. Try it. There’s no harm in that. Worst-case scenario, you’ll get fired. That’s a blessing in disguise most likely.

    Host
    Well, I mean also you’ll learn from that experience I think, you know, and going all the way back to things you said earlier, you’ll be true to your own values, right? And you’ll be doing things for the right reason, with the right intention. And you know, we’re still, I think we’re very lucky that there’s plenty of employment opportunity for engineers right now. So the way I actually look at this then too, is there’s a large opportunity cost in staying at a place that’s not working for you.

    Shashank Singh
    That’s true actually. And also when you move 
 like I’m not encouraging the culture of job hopping every now and then 


    Host
    I’m not saying that either. I’m just saying staying in a miserable situation and making it your own personal struggle when there’s all this other opportunity out there, that makes no sense.

    Shashank Singh
    And also as an engineer I see when I’m in the company for long enough. I’m doing the same thing every day and there’s no change. Then also I think you need to think 
 give a hard think. Is this, what do you want to do or do you want to learn something new or not? Because the technology is rapidly changing. If you’re not keeping up believe it or not within a few years will be totally outdated, and then you will be 
 it will be very difficult to catch up.

    Host
    Yeah, definitely. Like when we worked together at RUN, the reason I was there was really, I had been for several years like in leadership roles and not individual contributor roles, and I felt like wow, the cloud just happened all around me and if I don’t get back to an individual contributor role and build things in the cloud, I’m going to be totally irrelevant. Like what am I going to manage people I’ve never built stuff the way they’re building it. Like that doesn’t make any sense.

    Shashank Singh
    I was interviewing somebody in RUN. He was a very senior guy, worked for an FX, like foreign exchange, and very senior guy, probably 20, 25 years of experience in the industry, and he was kind of a CTO in an FX company. And he was there for an interview at Run, for a similar position I had, and I gave him the same advice actually. “You have been in finance for long, have been seeing a certain kind of industry. You have not worked on AWS, you have not worked on the cloud part of things. Most of the things you have done is your own proprietary stuff. I would say blindly accept this job because even for long term, if, if it works out very well 
 if it doesn’t work out you, you are here for six months to a year. You will never get [another] opportunity [like this]. If they are offering you a job, then take it.” And that guy joined. He was there for more than a year I think, and right now he’s working for Microsoft AI.

    Host
    There you go. That’s perfect.

    Shashank Singh
    Yeah. When he was leaving, I was telling him aren’t you glad now that you joined and I was kind of pushing you to join. Because he was kind of taking a step down. But sometimes you have to take a couple of steps back to take a long jump, right?

  • Show Notes

    Topics: Ad Tech, Career Advancement, Cloud Platforms, Code Schools, Computer Science, Distributed Systems, Education, Hadoop, Internships, Interviewing, Open Source, Software Engineering, Systems Engineering, Teamwork, Team Leadership

    Companies

    Twitter Magnetic

    Introduction

    Alex Huras was drawn to the tech mecca of San Francisco from his native Ontario after getting a taste of American tech jobs (and salaries) through college internships as part of the University of Waterloo co-op program. Joining Twitter in 2014 with hopes of a bright future, he has stayed through four remarkably turbulent years. And all along he has kept observing and learning. How do teams maintain enough continuity to continue to deliver value through turnover? How does a company decide what to build? How does it avoid expert-level dependencies on open source projects supported by a short list of experts? How does a new engineer learn to solve problems in a big company with complex technical challenges that have been evolving for a decade? How does a young engineer avoid getting locked into skills that will inevitably decay in value? Is it possible to articulate what makes effective engineers effective well enough to hire for it? Alex can describe the mathematical foundations and underlying structure across code, cloud systems and data, but he has also learned the hard lesson that sometimes a beautiful set cover problem fails in the real world because of a mundane failed database backup years earlier. Some episodes of “Using Reflection” start out with a premise. Then there are conversations like this, in which we enter in mid-sentence and the ideas go where they will. I enjoyed the process, and I think you will too.

    Guest Bio

    Alex spends a lot of time thinking about how to solve problems differently; if for no other reason than as a creative outlet for learning. Through a magnificent stroke of luck; he sometimes does this in a professional capacity. As of writing, this means making advertising data more accessible and reliable at Twitter in San Francisco. Originally from Toronto, he holds an awkwardly shaped degree in Systems Design Engineering from the University of Waterloo.

    Links

    Twitter: @athuras University of Waterloo University of Waterloo: Co-op Program University of Waterloo: Systems Design Engineering Systems Engineering Apache Kafka Apache Hadoop Apache Pig Apache Pulsar Yarn Linear Algebra Set Cover Problem MySqlTranscript

    Alex Huras
    
 sure you have 2000 engineers and yeah, anyone can make twitter over the weekend with like freshmen, like software engineers or whatever. It’s like great, you can do that, but there literally is an infinite amount of work to do and there’s like this possibly extremely large opportunity and it comes down to the same thing, right? Like in theory you want to be like at the edge, at the limit being like, oh, like I’ve got to do this thing and I need to do it as efficiently as possible using pre-built tools.

    Host
    Right

    Alex Huras
    If anything, we [at Twitter] have the opposite problem, which is like a whole bunch of people independently 
 like it’s so big that a whole bunch of people independently go and try to make partial solutions. Like when you’re large enough to have – I think as we were talking about this a little bit earlier – about who is in the right position to be investing in building these platforms and abstractions, and distributed queues are a great example, right? Like if you’re, if you’re a small company and spinning up your own distributed queue, like good luck with that. You’re making a mistake. And I’d argue that, I even even at Twitter scale or, or, or like when you have a team of possibly hundreds of people that you’re able to allocate towards that, it’s still a questionable value proposition just because, because you’re suddenly competing with the big boys, right? Like Yahoo Open sources Pulsar, like Linkedin produces Kafka, like there’s SQS, like all this, all these like giant battle-tested, distributed queuing environments and if you’re going and spinning up your own distributed queue, you better have an extremely good reason.

    And I think the other, the other hidden cost here though, and we’re seeing this especially as we’re trying to hire people with this expertise in this, is like very, very few people have expertise in designing and, and like even patching Kafka. You look at the contributors to Kafka like, sure. It’s like hundreds of people. It’s like, yeah, there’s hundreds of people out of an industry that is producing like hundreds of thousands if not millions of engineers like this. It’s actually an extremely small group.

    Host
    And the long tail of those people are not on the core.

    Alex Huras
    Yeah, and people are like, “Oh, everyone can contribute to open source.” But some random kid out of college is not making significant patches to the Linux kernel.

    Host
    Right, or Kafka for that matter. Like the complexity and expertise 


    Alex Huras
    
and even the testing cost too, right? Like even within within Twitter, like if we want to make changes to the physical topology of our operating environment for something like Kafka or internally event bus, like sure, you make the patch, but in order to actually ascertain whether or not it works like that’s going to cost you $100,000 to run that test. Like it’s not, it’s not like anyone could just spin up an infinitely large cluster and like pump petabytes through it.

    Host
    Because the testing isn’t just correctness of some function, it’s correctness at operational scale, which is a very hard problem to test.

    Alex Huras
    It’s like, oh, your number of file handles explodes in this case. That’s a problem. You just lit this machine on fire, when you own it!

    Host
    And you just went in a circle. That’s why we take the battle-tested option. Just use that because like, yeah, LinkedIn already used it.

    Alex Huras
    Sure. And I think uh, a bigger, a bigger trend. I mean, I don’t know if this is a trend in industry are just like wisdom, but like if you think you have those problems, think again. Like maybe you do, maybe you’re like a unique snowflake and you have these special problems. But like in general it’s like a modeling problem. Like if you’re, if you’re hitting the limits of Hadoop, you’re probably holding it wrong.

    Like, oh, I want to write my own scheduler. It’s like, “Are you sure?” Are you, what if you phrased it as a scheduling problem. Does your operating system solve this for you? Like does Aurora solve this for you? Does Yarns solve this for you?

    Host
    You can think of partitioning work at all these different levels. And see the commonality of it. Like from one function, one row up to data sets up to multiple jobs 


    Alex Huras
    And there’s two sides to that coin, right? The one side of, of knowing the fundamentals – and this is also something that is extremely tricky to test in an interviewing environment – and I’d argue also kind of tricky to test even in an actual job environment 
 because the extent to which you need these sorts of, the ability to multiply recursively and in an enormous number of dimensions analyze these sorts of patterns is possibly 
 it’s like the path to insanity. Like it’s almost like, oh, it’s super powerful to see these patterns everywhere and then you realize, no, no, no, you’re just you’re seeing these patterns everywhere. Like seek help, right? It’s, everything’s a scheduling problem. Like everything is a set cover problem. Like how do you move this stuff around?

    Host
    Well the thing is, the reason those fundamentals are fundamental because they are.

    Alex Huras
    Because it’s math.

    Host
    You can take a higher level view to solving the problem very quickly and not get thrown off by so many things 


    Alex Huras
    By minutia.

    Host
    Like this was so different than the last prolbem and it’s not actually not.

    Alex Huras
    So I was trying to make my job faster so I checked the scheduler and now I actually I’m yak shaving for like the next 


    Host
    (Laughs) Right, exactly. But I guess how did we get on this?

    Alex Huras
    I think the way that this came about was it was like what core assumptions that have governed, how performance of systems work for a long time can be changed by hardware changes and what would happen if disk, if canonically if like disk was faster than RAM, right?

    Host
    Or as fast. Right?

    Alex Huras
    Or maybe like comparably fast right. Like now suddenly you don’t have to worry about things being persistent anymore and now all the sudden all of these tools that are built to expect a file system API are suddenly like operating like standalone applications with their own virtualization support.

    Host
    And you’ve completely broadened the window where you have fast enough access to way way way more memory at a way lower price point than you had before. It’s like a huge architectural change.

    Alex Huras
    Like even even now, like I mean we can spin up, most people can I think with the power of the cloud. But you can spin up like petabyte memory clusters. It’s like, oh, most of your stuff is like volatile processing and the state that you need to persist, you persist to like some dedicated like distributed system that is like expecting to do that, not your local file system.

    Host
    Yeah the only time you think about local disk is logs from the local process and even that we could easily change.

    Alex Huras
    And this is, this is what we were talking about how like structured logging or those sorts of techniques suddenly become really interesting because it’s like, well why aren’t you storing everything in this like mysterious high-performance distributed file system thing, right?

    Host
    That queryable.

    Alex Huras
    Yeah. That’s queryable, that has referential integrity.

    Host
    So is this kind of like everything is Splunk? Is that what this architecture is?

    Alex Huras
    (Laughs) Maybe. Well this is the mania, right where you see these patterns again. It’s like what if like everything was the JVM or like parallel virtual machine or like some of these esoteric distributed systems.

    Host
    Cool. Um, you want to actually start?

    Alex Huras
    Yeah, sure. Let’s talk about life.

    Host
    Alright. So welcome to “Using Reflection,” a podcast about humans engineering, and I’m here today with Alex Huras. Why don’t you introduce yourself and then we’ll get into the conversation.

    Alex Huras
    Cool. I’m Alex. I’m a Senior Engineer at Twitter. I work on currently data processing systems predominantly within the revenue or ads ecosystem at Twitter. So time series analytics, a little bit of forecasting, some search index stuff, mostly spread across that domain.

    Host
    Cool. And a full disclosure, I can say that we worked together a while back when I was at Magnetic and you were still in school at Waterloo and that’s definitely something I wanted to talk about is the program there, but, we can kind of start back to your younger years and you could maybe talk about how you got interested in engineering. Do you remember any formative experiences that drew you to it?

    Alex Huras
    Sure. So I guess the long story is I used to be really into, I mean it was always kind of interested in engineering or scientific or those sorts of worldviews. My father was an engineer. Yeah, like how things worked. I like building things. I like taking things apart. I think the second is probably the bigger, the bigger engineering story. I think that there’s a Dilbert comic, right? And so that kind of naturally led to like I was interested in math and science. I think it was a fairly traditional cycle there. I think the one possible caveat there was I was really into music. It was the situation where I had to decide between going to school or college for music or systems engineering, and my father is a systems engineer and literally went to the same program and my parents were very supportive, but it’s actually, they were like, so do you want to get a job? Like at some point in your life? And, and the answer there is eventually, like I went and did engineering at Waterloo.

    Host
    Uh huh. Do you regret that at all?

    Alex Huras
    No, no, not at all. I think it was, I think it was a great decision. I don’t necessarily think I would have been screwed the other side, but I think especially going back and visiting people that I, that I knew from back then that went into different industries, I think engineering is an excellent choice. The job market is extremely difficult for essentially everyone else right now, and so I think that that had a lot of formative experiences, especially as an introduction into software that I actually did [help me] kind of later. So I was actually a plumber for one term. That was one of the more interesting experiences I’ve had in my life and I don’t regret doing it, but now it happened. I did some finance stuff and eventually kind of taught myself to code during that because it was so mind-numbing.

    Host
    So, in college?

    Alex Huras
    Yea. This is still a co op stuff.

    Host
    So what were you studying? Computer Science?

    Alex Huras
    So yeah, so I was studying something called system design engineering at Waterloo, which I like to describe as the most vague, undifferentiated form of engineering that Waterloo offers.

    Host
    So you got to decide what it was.

    Alex Huras
    Pretty much. I mean what it ended up being for me was five years of Linear Algebra, but it can take different forms for different people in the program.

    Host
    OK, so how does Linear Algebra map to Systems Engineering?

    Alex Huras
    Oh how does it not. Everything’s a schedule problem. Everything’s
 Everything can be expressed as a matrix transform.

    Host
    That’s actually kind of true, especially if you’ve ever programmed in APL or something.

    Alex Huras
    Exactly, right. It’s all numbers all the way down, and so I think the exposure to software ended up just being kind of like it was interesting. And then what ended up kicking it off was I worked, I got an internship I was super excited about at a small tech startup in the barrier called Skygrid at the time and that essentially started me off on a trajectory of where the next stop was Magnetic working with you guys.

    Host
    Uh huh, well, so you did pretty well on the phone screen you considering you just kind of taught yourself to program.

    Alex Huras
    Yeah, yeah, I mean I was, I was like writing some what I now realize that it’s absolutely horrifying javascript at Skygrid.

    Host
    I still remember that phone screen because I asked you the question and you said something like, “Ah, OKw, I see why you’re asking me this.” And then you proceeded to answer it.

    Alex Huras
    Right. Like use a heap or something, it was something like use a heap.

    Host
    Yeah like all 30-minute test questions.

    Alex Huras
    It’s like, would you like me to implement it? Let me jump through these hoops for you.

    Host
    I tell people that I’m like, just start with which data structure that’s like, yeah, most of them. And does sorting help me?

    Alex Huras
    Yeah, do I need ordering? Like maybe I do. Yeah. And actually just to slightly tangent there, I think one of the harder things and why interviewing for more senior engineering candidates, like especially like once you can assume that people know the data structures are the next thing is like instead of it being like what data structure to use, it’s like what are the constraints like period, like and that, that question is, it’s sort of like you build your career and trying to solve that question, right?

    Host
    That’s requirements. That’s the business. That’s the operating environment, that’s the world, that’s the competition.

    Alex Huras
    Exactly.

    Host
    Now you’re in the domain of the whole world where I think that’s a big separator from a junior versus more senior. That’s interesting. Okay. So you got the bug. Yeah.

    Alex Huras
    Yeah.

    Host
    And then so what, what was your career trajectory like at coming out of school? You decided you wanted to stay in software?

    Alex Huras
    Yeah, and I don’t necessarily view it as like a, I mean within school there’s always this kind of existential pressure of like not liking software because it’s like 
 soft. There was, when I was in Waterloo, which may or may not be the situation now, there was definitely a strong bias against incentivizing software engineering or to, to, or like non-software engineering and primary specialists. Like essentially there is a software engineering program at Waterloo. If you’re trying to do those sorts of things in the more conventional engineering stream is frowned upon.

    Host
    I see. Interesting. Even applying it back to these other disciplines 


    Alex Huras
    Sure, and there’s a lot of design projects 


    Host
    But isn’t software having an impact on all these engineering disiplines?

    Alex Huras
    You’d think so. And I think it just comes down to possibly the, just the personalities of the individual professors that are doing these things, many of which are not in a software environment. And the other part is like software is still kind of this, this like vague, ambiguous. Like it’s not, it’s not. You couldn’t really consider it to be like an applied science, like it’s very much like, and this is something that is maybe a little bit more subtle, but there is software engineering as in solving problems that relate, that you essentially use computers to solve and then there is software engineering as in like writing code, and writing code I don’t believe is like an engineering discipline. It’s an extremely powerful tool in the same way that like speaking English is not like an engineering skill in and of itself. Right. But it’s absolutely necessary for you to be able to operate.

    Host
    Did you feel that as like a pressure or did you just kind of feel like you were going to do what you wanted to do? Like how susceptible were you to that environment?

    Alex Huras
    Yeah, I don’t, I don’t necessarily. I mean, I’m sure in retrospect, maybe I was, but like a large part of it was the fact that like, let’s be real. The software engineer, the software engineering industry in the United States pays roughly double if not more than the equivalent thing in Canada and probably similar multiples everywhere else in the world. And so being exposed to that market, especially after I did Magnetic, I worked briefly at Facebook and like, once you’re there you’re there. Like there’s no going back at that point.

    Host
    So you’re like, I’m in New York making money.

    Alex Huras
    Yeah. Yeah. And this is the thing too is like you’re paying more than like even as an intern, you’re paid more than what your tuition is like to go to school. And so you do that at facebook, they pay you even more and then you get like a full-time offer and you’re like “Wow, this is ridiculous.” And so the economic incentives were aligned, but I think the second thing is like, I don’t know what it was, but like maybe 50 percent of my graduating class ended up doing software-related things.

    Host
    Well, when was that.

    Alex Huras
    This was 2014. Yeah.

    Host
    Well it’s probably just where a lot of jobs were.

    Alex Huras
    Yeah. And that’s. And that’s, that’s what it is. It’s like that was the market that was hiring, huge employer

    Host
    Super aggressively up there I’m sure, because I’ve worked with a lot of people from Waterloo, and I want to get into the co-op thing in a moment but, and just the level of talent and ttitude and also their preparedness because of the co-op program, it’s incredible.

    Alex Huras
    Yeah, and so you graduate, you’re essentially ready to like you essentially have possibly up to two years of industry experience as a new grad. You’re competing with people who have zero experience, like the stars are aligned.

    Host
    And all the things you learn working you don’t learn at all in school.

    Alex Huras
    Sure exactly.

    Host
    How to work with people, which is something we can get into. How to work in a collaborative code base 


    Alex Huras
    So like when I wound up starting to work for Twitter in 2014, it ended up being not a huge deal for me I think in terms of like process. If anything I was kind of surprised by like how much less there was.

    Host
    It was more casual than some places.

    Alex Huras
    It was more casual than, for example, like what I was doing at Magnetic.

    Host
    I seem to remember lots of like debating about whether 10:00 AM was too early for the standup.

    Alex Huras
    Oh yeah those debates still go on I assure you, strangely not when I’m working in New York. So there’s, there’s that thing and I think the, something that takes a lot of, especially in new engineers that come out of CS education or whatever into their first software job by surprise is the fact that there aren’t really problems that you can just like give someone with no expertise and just like have them solve in isolation. Like that’s not the most effective use of your resources. And so if you’re not really, I don’t mean sometimes there are others problems and if so then like those are great, like phenomenal.

    Host
    So you mean usually the scope is too broad and interconnected 


    Alex Huras
    the most effective way to solve these problems is not to just like sit down on your own, on your own and just like slam your head into the wall.

    Host
    Sure. That’s almost certainly true because almost everything about the solution is going to come from a knowledge within the organization.

    Alex Huras
    Yeah, exactly. Everything’s convoluted, and there’s like 
 I remember what the first thing that I had to do was figure out some, like the sum of some numbers, and this is like classic accounting problem because the sum of some numbers didn’t add up to the total 
 like two data sources, combining these things. And it ended up being this like week-long investigation,

    Host
    Isn’t that every problem in ad tech?

    Alex Huras
    Yeah, pretty much. It’s, Oh yeah, it’s just a haunting problem really. But essentially at the end of it it was like, “Oh yeah, like the database is out of sync.” Like we lost the master, there’s some failover that was botched like six months ago, and then this data was just lost from six months.

    Host
    Two hours of data from six months ago.

    Alex Huras
    Yeah, exactly. And you’re like, “Oh, so what did I learn? I learned that you should just ask this guy.”

    Host
    And the other thing, the other, the other thing I find in each dream job is you have to learn the code base, right? You have to read a lot of code and understand sort of what’s where and map it to a mental mental model of higher level idea of kind of boxes and arrows of the system and from that to the business and then that makes sense of the names you’re seeing in the code and the functions of the things you’re seeing. And this whole, that’s a whole process that when you’re given assignments which are like write a function or even write a little application, you’re not dealing with that scope, that breadth and needing to kind of have multiple levels of abstraction in your mind.

    Alex Huras
    Yeah one of the things that blew my mind initially was like this concept of requirements changing over time, right? I mean whoah, whoah right? I mean like you see little pieces of this, but like by over time I mean not like while you’re developing it. I mean like you’re looking at something system and like there are these points in history where like things mean many different things.

    Host
    Where the columns changed or the inputs we used to this thing changed.

    Alex Huras
    Yeah. And it’s like, it’s like, why can’t I get the number of impressions on this video across this four-year period? It’s like, oh, because actually they were indexed into a different place because this team was owned but in a different place and there was an acquisition. It’s like, Oh, a serialized, wrong to begin with and it was cheaper to just like change our worldview that it was to like go back and like patch the data. Yeah.

    Host
    So where, what, what company was this that you started in, in your first job out of school?

    Alex Huras
    Oh first this was Twitter.

    Host
    Oh so you have been at Twitter this whole time.

    Alex Huras
    Yeah.

    Host
    Huh, interesting.

    Alex Huras
    It’s been a very interesting ride especially and I mean a lot of people don’t 
 Like it’s not, it’s not the experience I signed up for it, but I don’t regret it.

    Host
    Well what did you think you were signing up for?

    Alex Huras
    Well, I mean there is, I’m not necessarily susceptible to hype, but it was, it was definitely a small-team environment. It was essentially the remnants of Twitter’s BackType acquisition and doing a kind of a full stack ads analytics thing for Twitter. And so like within a couple of weeks there are a lot of changes. Like had IPO’d, they were going to be the next Facebook, that didn’t happen. There was this giant like morale swing 


    Host
    Like I’m 22 and this is my first job and this is happening 


    Alex Huras
    Yeah, exactly. And so you’re, you’re kind of like, I learned a lot about how organizations work or don’t work and that I think has been invaluable, but it’s not something that like I would actively look for in a, like, you wouldn’t, you wouldn’t go 


    Host
    I mean maybe even some chaos.

    Alex Huras
    Oh yeah, definitely. I mean some people do this and also we’re hiring (laughs), but you wouldn’t dive in and be in this really hard place where there’s all this fresh competition and all this extra hype that’s moving away. There’s like Snapchat and Instagram.

    Host
    Right. Some people love the idea of a challenge.

    Alex Huras
    Yeah and so that was not necessarily what I had signed up for. I had signed up for, possibly naively, for like more of the exposure to some interesting technical challenges with an environment of people that were like really neat. And to see that environment like totally shift almost annually over the next three years has been extremely interesting.

    Host
    But that goes back to what you said about requirements changing or something like a huge difference between working and, well, all education is basically education starts with the assumption that there’s a static set of whatever you’re going to learn and it’s static.

    Alex Huras
    Yeah, like connect the dots.

    Host
    This stuff is basically the start of the semester, here’s what we’re going to learn. Whereas working, it’s like – especially I’ve been in startups now really consistently, depending on how you count, seven to 10 years let’s say – things change every day. And it’s what I find really interesting about it is you need this constantly evolving mental model of what the business is, what your job is and how to be 


    Alex Huras
    Or even what resources are at your disposal. And there’s also, especially even over – and software is super interesting here, but like even over the last three years, like industry, technology changes like the cloud 


    Host
    Righ, I mean the reason I went back to being hands on was the cloud because I thought to myself, “If I don’t start building stuff this way, I’m going to be totally irrelevant and I have to have the rest of my career.”

    Alex Huras
    And that’s, and that’s 
 essentially like I’m, I’m like pretty young, pretty early in my career and that still terrifies me. We interviewed people who have lots of experience, all of it, like all of the marketable experience is irrelevant. And it’s. And it’s like that is 


    Host
    So let’s stop there for a second.

    Alex Huras
    I’m afraid.

    Host
    Don’t you think that those people could learn?

    Alex Huras
    I definitely, they definitely can. But the question is like how do you set up, how do you set up 
 like let’s say like you want to hire those people anyway, right? So then the question is how do you set up an environment where they can actually learn that effectively and their value proposition is commensurate with how much you’re going to be paying them? And this, I think this is also kind of like the, the dark side of software engineering in many respects is like if you’re being hired based on skills that you possess as opposed to like how you solve problems or leading teams or whatever, then those skills better be super relevant otherwise it’s overpriced. Right?

    Host
    Skills is a very hard race to run.

    Alex Huras
    Right. And so this is, this is the thing where it’s like I had the opportunity even at Magnetic it was like,”Oh do you want to like drop out of school and we’ll pay you a lot of money to like write Map Reduce jobs?” And I was like, “Oh man, this would be really interesting,” except for the fact that like, that would have been an absolutely horrifying career move. Maybe I would have been super excited and like jumped on Spark, jumped on Tapestry, like all these other things, but like, if you don’t, if you just set park there 
 Like we see people that come out of Oracle or even or like some of these other companies where it’s like you’ve been working here, you’re an industry master at like how to use MySql for example. Like you know everything, you know the ins and outs and it’s like, “Do we run MySql here? No. Like I guess you’re not eligible for this position.” Like unless you’re willing to be like I am, I know I’m willing to take like a 50 percent pay cut and work on something that I’m not good at.

    Host
    That just came up in the last episode with my friend Corey who’s very much a Postgres specialist and contributor and um, has made a 20-year-plus career now basically specializing as being working with relational databases. But he’s been a consultant almost the whole time. And his point was, if you’re doing what you’re saying 


    Alex Huras
    You need to be consultant.

    Host
    Yeah, the consultant fit is “I do specialize, I’m pretty much on the cutting edge, which means I’m better than the people in house.

    Alex Huras
    Yeah you’re going to pay a premium for this skill set and you’re going to have to jump around 


    Host
    And when you need me, I’m gonna be totally reliable and better than who you have. And he said the key is if you’re going to focus around skills – the two things maybe are you got to try to always kind of be moving toward where you think opportunities are going to be, and you need to find things where you can be better at than most people.

    Alex Huras
    Sure. And typically that means super nichey, or almost you can do the opposite, which is like super generalist and maximize transferable skills 


    Host
    I’m not really interested in you slinging dirt about Twitter per se, but it’s interesting to me that it’s, it’s been a volatile environment, meaning and a sense of there’s been a lot of change going on while you’ve been there. Right. Not, not trying to have a negative connotation. And it’s interesting to me that, you know, your expectations were almost immediately confounded, especially about what it would be like working with teams and all of that. So what have you seen or what do you think you’ve learned about what makes teams effective in, in this kind of situation where there’s a lot of change happening and how you can be as valuable as you can be?

    Alex Huras
    The biggest problem that I’ve seen or rather like a symptom of teams that are not aligned properly or like not effective I guess in this terminology, is like they don’t necessarily have a common goal or skill set. Like it isn’t 
 like teams with strong visions and who have people that are essentially dedicated to solving core problems. Like regardless of how they get solved, tend to be extremely effective. They survive through like heavy attrition or like the stock price dropping by 2x or whatever, and it ends up also being easier to hire for in many cases. Right? So like even over like four or five six seven years or whatever, very few teams at most companies in the Bay Area I think had been like totally stable. Right? And yet the teams that I do see around Twitter and around other places that are, have all these things in common. It’s like they’ve got a core mission which is like relatively unambiguous and they use to actually decide whether or not they’re working on [the right] problems. They have access to resources to solve problems with, whether this means using the cloud or like having people, and they’re essentially, they like self-select for people that are kind of aligned. And a lot of it is like, okay, well if you’re a junior engineer, there’s a place for you where you can actually learn from people who are really good at what they’re doing because they’ve been so stably aligned in this direction. If you’re hiring senior people, it’s like, hey look, we’ve got these junior people you want to mentor, like great, here’s some people like make everyone better. And then strategically, even within a big organization, whether it’s Twitter or any other engineering environment, that team becomes almost 
 You can, you can trust it more. There’s this a team dynamic thing where it’s like you have to build a whole bunch of trust and consistently do that and if people don’t trust each other, then the team collapses and if people don’t 
 if a team collapses like you can’t deliver. And so there’s this kind of stable repetition of things that people are actually interested in, and that, that typically wins.

    The problem then is like, if you’re not in that position, how do you like assemble that from the chaos? Which has happened to various parts within Twitter and other companies as well. If your company is relatively flat and it has this long-standing tradition of like anarchy, then it’s going to be very difficult for you 
 like those teams might develop organically; they might also disappear organically because they grow together and they’re like, “Wait a minute, I could just like start a consulting shop.” And then the whole team like leaves or company or whatever.

    Host
    And that goes back to the consistency you were just talking about.

    Alex Huras
    Yeah, and so you need, you need some direction, whether or not it’s super top-down or whatever like it doesn’t matter. If there’s a direction and people buy into it and also realize that like the company as an abstract entity is actually like incentivizing you to be more successful than it’s like for lack of a better term, synergy or whatever.

    Host
    Right.

    Alex Huras
    And I have to be totally honest I have not seen that in its ideal form, but that’s, that’s something that we’d kind of like strive to align people around.

    Host
    Right. So then what about you personally? How do you identify how you can best fit into that mission once you identify that that mission is there? How do you kind of keep realigning yourself?

    Alex Huras
    Yeah, and that’s like the big existential question that I don’t necessarily have a good answer for.

    Host
    Yeah that’s like working right?

    Alex Huras
    Yeah. So like my, my general answer is I just kind of like work on things that interest me and it just so happens that I’ve been kind of interested in this like data processing domain for enough time that kind of know what I’m doing 


    Host
    But I mean can you map it back to the goal of your team?

    Alex Huras
    There’s kind of this weird feedback loop where like I’m interested in solving this problem, like as long as someone, as long as someone says that that problem is worth investing in and suddenly there’s like all these other people that are interested in the same problem, and it’s almost like I was like, we set my roadmap being let’s solve this problem or let’s work with other people to solve this problem. And it’s kind of 
 and maybe this is why it’s super difficult, but it’s like that there is this virtuous cycle where it isn’t necessarily like I have to consciously align my interests with the business. I think that’s ideal. I think in reality within advertising, you do need that realignment when it comes down to individual teams, like the stability of a common goal being repeated for a long time can exist. Even like Twitter, we’ve got like 2,000 engineers or whatever. It’s like you don’t need 2,000 engineers to have a common direction. You actually only need like 100 of them.

    Host
    It’s really hard for 2,000 engineers to have a common direction.

    Alex Huras
    I mean tell me about it (laughs). And that’s something that like Google has to address my problem too, and I think even when you’re, when you’re working through your career, I mean if you’re, if you’re in a position where you have to consider the alignment of 2,000 individuals, like you’re probably not doing software engineering anymore, and for at least where I am in my career, I think it’s enough to have some sort of local stability that you can be like, all right, we’re going to be doing this for two years and this is the, this is the vision for how we’re going to solve these problems. And like you’ve got any resources that you can, that you can find or like that we can provide to solve it. And I like the restriction there being on what we can deliver rather than being like, all right, here’s a bunch of artificial constraints like go solve the problem.

    Host
    Yeah. And I think, I mean because I’ve also been spending more than the last year plus here on like data and have done that earlier in my career too. And one observation I can make about that is it’s somewhere between infrastructure and product features.

    Alex Huras
    Oh for sure, yeah.

    Host
    And so like you can be a little, your goals can be really clear even if all the different features or whatever uses of the data are less clear.

    Alex Huras
    Sure.

    Host
    And I think so you can be in this kind of world where you’re just like 
 your interface to the rest of the businesses is like “I delivered this dataset and it’s consumable by you in these ways.” And so that that’s like a very clear goal.

    Alex Huras
    And I think the, and this is like the meta-trend for that part of the industry is like there’s a situation, there’s this kind of blurred line between having non-engineers be able to declaratively do these sorts of things and having 
 and like implementing 
 and on the engineering side it’s like implementing platforms, that you’d want almost this like global compiler that is like stitching together known data sets. And it’s like, “How do you write that?” It’s like, “Oh I don’t know.”

    Host
    Yeah right. But that would still be something with a very clear goal that you can define 


    Alex Huras
    Yes. And so the, I think the danger especially for that – and this is literally like what I’m working on right now – but like the danger for those things is like, again, this kind of blurs the line because why would you write that yourself? Like that’s an expensive project to undertake. Like what are the value adds? You’re trying to essentially justify spending like millions of dollars of, of resources over multiple years trying to solve this problem. Then you have to be like, oh, is that actually a problem? And you’re talking to people who have no idea too, so it’s like, oh, like maybe people don’t, don’t mind writing this themselves. Maybe we were totally happy hiring engineers to do that. Like I haven’t had to think about this before, but maybe it wasn’t as clear as I thought.

    Host
    Don’t take this the wrong way, but you’re not drawing on 20 years of work experience.

    Alex Huras
    No, exactly. I have no idea. People ask me these questions like, I don’t know, I just work here. (both laugh)

    Host
    Right. Interesting. I want to circle back a little on Co-op too. Maybe you could first frame it for people who aren’t familiar with it.

    Alex Huras
    So the Waterloo Co-op system is essentially, you could think of it as interspersed in your normal undergraduate degree you have compulsory four-month internships that if you don’t complete them to some satisfactory manner, you just don’t graduate. So in engineering at Waterloo this is required, like you can’t get an engineering degree, which is a Bachelor’s of Applied Science, without completing five of six possible co-op internships.

    Host
    So you went to school for four years.

    Alex Huras
    Yeah. So the, the undergraduate degree is four years and eight months, so roughly five years.

    Host
    So you go to school for almost five years and around two of that 


    Alex Huras
    So the way that my undergrad worked is like you started school in, in the fall of whatever year that was and four months later you like Christmas time or whatever, like during that you have to like find a job and there were resources that help you find a job, but it’s not like one is provided for you. You’re competing with, with all the people in Waterloo and theoretically the world depending on where you’re going and you have whatever experience you have, which after the first four months of university is effectively zero. And this is also why I was a plumber. Yeah, it’s like “Is Facebook going to hire me? No.” And so then you’re four months of working full time. Essentially you’re then rotating every four months until essentially the last year and then you have eight months of solid school.

    Host
    And each time you have to go and get a job again.

    Alex Huras
    Yeah.

    Host
    Does it become more and more competitive? Does it become like a thing?

    Alex Huras
    So yes and no. I think it’s actually extremely competitive at the beginning because most of the people are not differentiated.

    Host
    I see.

    Alex Huras
    At the end of the 
 Well, especially especially in your equivalent to senior year, you are the most competitive intern on the planet and so like, yeah, sure, you’re competing with other people at Waterloo, but if a tech company wanted to hire interns, they’re just gonna like pick you. I mean generally, I mean that’s kind of a 


    Host
    And hopefully by then you’ve gotten like a blue chip 
 like by that time you’ve interned for Facebook or whatever.

    Alex Huras
    Yeah. And, and that’s the thing is like those are kind of like the jackpot I think in terms of software engineering, but there are a lot of other large-scale employers. So for example, the government. Yeah, government is a big hiring. Like you can do research assistant type things within universities. There’s lots of smaller engineering companes especially for non-software disciplines. But I think the key distinction is like when you graduate, you do graduate later than then you’re essentially people the same age group. Like about by about a year, but at that point you have two years of quote unquote real world experience and if you knew what you were going to do and you aligned yourself so that all those were, for example, like within software that is like two years of industry experience, but being, being like fresh out of school.

    Host
    And did you find that people, especially the internships you did later, that there was an understanding that you could come back there after you graduated or?

    Alex Huras
    Uh, yeah, I think every single, every single place I worked was like that.

    Host
    There you go, so you’re in a good position, you’re not freaking out when you graduate.

    Alex Huras
    Yeah and I think it’s also like, I’m not sure how much of this is because the tech industry was taking off, but I think in general like, it is like 
 working at a place is the easiest foot in the door that you could have working there. Right. So like I know a lot of people that were working at companies that were not necessarily converting internships into full-time offers, but you would, having worked there and theoretically performed well then you’re, you’re way better off than like any random person.

    Host
    Oh, I mean speaking as someone who’s had to hire people, the amount of risk that that covers is like nearly all of it.

    Alex Huras
    Yeah, part of this is communicated actually to employers in the Co-op system. I’m not sure how much I agree about this, but like there’s like a public rating that you get for every internship.

    Host
    Ooh!

    Alex Huras
    Yeah. You may not have seen those when I 
 but there, I mean some of them are like gamed and you can essentially like elect to not display them and some things. But essentially like the employers that are looking at the Waterloo pool as integrating into the Waterloo system have a lot of power. And so the contract that they kind of implicitly have with the university is like, you have some slots, like you’re going to fill them and you have a lot of information, like more than you would normally have.

    Host
    Well, the school’s a big part of the school’s value proposition to the students is 


    Alex Huras
    
 is this network right 


    Host
    
 right, of desirable employers. So they are making this two-sided market that is very intersting.

    Alex Huras
    Yeah that’s ripe to be disrupted. Right. But, and this is, this is kind of the bigger question is like why, and I still get this today, like why does no one else have this?

    Host
    Right I mean of course that’s where I’m going next. How repeatable and scalable do you think this model is?

    Alex Huras
    If you, you were to just have the requirement that people go out and find jobs every four months. Like until they graduate that that would, I’m not sure 
 Like, and this is one thing that you were like I’m not, I wasn’t necessarily in a situation where I was taking advantage of the support network of Waterloo, but that is valuable in and of itself. And so like if you were a school where you want it to have internships, I think the first step is just like don’t do them in the summer. Like have school in the summer. Have your interns compete with effectively n onne in the winter and fall and now suddenly all these companies have like full-time intern support.

    Host
    I suspect even though you said you weren’t taking advantage of the support, of course you were.

    Alex Huras
    Sure implicitly there’s like this reputation 


    Host
    There is a whole infrastructure of processes that are occurring that you had nothing to do with that are still helping you get a job.

    Alex Huras
    So for example, like my, my earlier stuff that I did 
 like the first three jobs I effectively found on my own outside of the system. I think Magnetic, I did end up using the system for.

    Host
    I remember that was set up and I talked to other pople that day.

    Alex Huras
    And so like that from a recruitment angle makes hiring from Waterloo very efficient. And so like if you were a university and you wanted to implement something like this, like that would probably be a sizable investment to build up that stuff. But I think for a lot of smaller institutions, like if there’s no reason why this cannot work.

    Host
    You do think it’s 
 would be beneficial?

    Alex Huras
    I think so.

    Host
    It’s like, I’ve been thinking a lot about this. The job market for what we do is so broken.

    Alex Huras
    It’s nuts.

    Host
    Along multiple dimensions. There’s not nearly enough people and yet the system that’s currently used to find and select people has huge amount of bias.

    Alex Huras
    Yup.

    Host
    It’s leaving out so many sources of people 


    Alex Huras
    Sure, and I think there is a lot evidence to say that it’s not even that successful.

    Host
    Right! And almost everyone who goes through it doesn’t think it has much to do with who ends up being good or not. Many hiring managers, you agree with that too. And, and yeah. Great. And I mean I thought that it twice or at least during this conversation when you were talking about speaking to these people with a lot of experience but maybe not the right experience 


    Alex Huras
    It’s almost like a marketing problem, right?

    Host
    Well yes. But I also think you need multiple actors in the system providing more training and support

    Alex Huras
    Sure, of course.

    Host
    So like your Twitter example of like someone walks in the door who has been shipping code for 25 years but doesn’t have your skills on your random HDFS cloud whatever whatever, like, so take them provisionally for three or six months and train them 


    Alex Huras
    Yeah and that’s something that’s super interesting because like a lot of the 
 and so as a Canadian citizen as well, like the immigration system is not set up for provisional employment into the U.S. So if we, if we, if we table the immigrationr-related discussion, which I also have strong opinions about, and a vested interest.

    Host
    Yeah.

    Alex Huras
    The like even internally I don’t even know if people like if that 
 Because there’s nothing stopping companies from taking on provisional employees. Right? I think it’s very tricky for sure. And I think it’s like risk management for employment or whatever and that, maybe, maybe that gives the employer a lot of power. Maybe it doesn’t. Like it’s kind of a 


    Host
    I don’t know. I think they’re worried about like a training and you leave that kind of thing.

    Alex Huras
    Sure.

    Host
    But you know what, like you don’t have that person now.

    Alex Huras
    Yeah, exactly.

    Host
    I think it’s up to businesses to retain people by making it a good proposition for people to stay.

    Alex Huras
    Exactly.

    Host
    And you start out with some loyalty. If you took someone who wasn’t in a position to work for you and you gave them the opportunity to work for you, you know, you get some loyalty. Also, like, I’ve had, um, benefits that came with requirements. Like when I was at Moody’s and they were paying for my grad school, you know, you had to say for some period of time after that or pay it back to them. So anyway, I just think that that’s an example, and I think this example of the Co-op is another example.

    Alex Huras
    But I think part of that is also kind of this indentured servitude model which does not like 


    Host
    But the reason now reason we have that is largely because of how we pay for healthcare.

    Alex Huras
    Sure.

    Host
    I mean, speaking of someone who has the only wage earner for a family of four, two family members have a significant health issues and that’s my whole life. I have to be so carefully tied to an employer for the wellbeing of my family. It’s crazy. And so like me being relevant in the job market, it’s not an abstraction at all.

    Alex Huras
    Well especially if you extend that and you’re like, “Oh, if I’m not tied to an employer, I’m legally not allowed to be in this country anymore.”

    Host
    (Laughs) Now we’re back to the integration topic.

    Alex Huras
    No, but it’s, it’s, it’s like, this is why it’s such a huge, I mean all of these things, obviously it’s an extremely complex system. All these things are tied together, but like it’s like even as like an American citizen working at a, like an upstanding business like getting better. It’s like if you’re still thinking about that, can you imagine it’d be like, oh, like I lose my job and like also like I could be like arrested. Right? That’s huge.

    Maybe that power distribution was OK, but we need better ways of paying people for work that they do. Part of this. I mean, part of this is kind of the quasi-toxic yet very economically interesting distributed contractor model or somthing, like the Uber’s right?

    Host
    Are we talking about the gig economy?

    Alex Huras
    Yeah, the gig economy right? And this is the thing too where it’s like if you were in, and this is the ideal thing for an employer, right? You have some very, very clear definition of what a job is that you want to do. And you’re just like hire people to perform. It’s like a machine. You hire like an Automaton to perform.

    Host
    Yeah in fact it’s going to be self-driving person before you know it. A self-driving car.

    Alex Huras
    This is the thing too is like even if you were in a situation where you had to hire software engineers for example, and you’re like, okay, I have some extremely well specified, like you have the test, the golden tests that says like just pass this test. Those jobs are already outsourced, like they don’t exist here. And so when it’s interesting, when you, when you’re talking especially newer engineers and maybe older engineers that are kind of looking for that, like the simplicity of having predefined problems, just like, no, like if you want to do that, we’re going to pay you 10 percent of your salary. Like how do you feel now? Right?

    Host
    Yeah so the way I look at this is automation is eating the bottom out of the every technology jobs.

    Alex Huras
    Yeah it’s like any decision problem is on the table.

    Host
    Like so, right. All of these are the same pressure, right? There’s more and more of a need for software. There’s not enough people, right? So there’s a bunch of startups and initiatives to try to help solve the hiring problem. There’s not nearly enough being done. Education is going to change. Attitude toward hiring people from alternative backgrounds is going to change. Training to support is going to change.

    Alex Huras
    This is also kind of my, my cynical perspective here, but like there’s all this like learn to code initiatives or whatever and it’s like coding is not the problem. The problem is not that there are not enough people that know how to write a function in javascript or python or whatever your language. It’s like if that was the problem, then we would have compiled away the solution. Right? Like tools will solve that problem. I mean it’s okay to use code as a vehicle to teach problem-solving skills or whatever, but like that should be the super-explicit goal. It’s like actually this is just a trick. It’s like an elaborate illusion that we’re presenting so that you learn math, right? Like this is like this is just a game we’re playing as a society to, to encourage you to rigorously solve these sorts of problems and that is what we’re missing. Or at least that in, in the, in the sorts of problems that I’m solving like that, those are the people that are like, I’m actively looking for and it’s like extremely sparse.

    Host
    So do you think that’s hard to teach or impossible to teach?

    Alex Huras
    I don’t think so. I think it’s just like, like video games teach this. Like this is, it’s not a, it’s not like a hard quote unquote hard problem just by the fact that it is like, it is a skill allegedly, but it has very ambiguous success criteria, right?

    Host
    Yeah but it sounds like what you’re saying is it’s the ability to define a problem with, with precision.

    Alex Huras
    Not necessarily with precision, but I think this, this generally comes down to like the holy grail of education, which is like critical thinking and like generic abstract problem-solving skills.

    Host
    Yeah. Okay.

    Alex Huras
    And so it’s easy for me to say, yeah, we need more people like that. I have no idea how to 


    Host
    
 how to produce them.

    Alex Huras
    
 how to produce that. Like that’s a huge education thing and maybe the learn to code initiatives or whatever actually do 
 like maybe that’s like the latent function of that is it puts kids in a situation where the incentives are aligned for them to actually be better at solving problems.

    Host
    Yeah, maybe it gets them in the door to where that is the work.

    Alex Huras
    Yeah. And so the big thing here is like you’re a small kid, you like playing with blocks or whatever. It’s like you start noticing that like arches are stable. That sort of thing will be with you for the rest of your life.

    Host
    Right.

  • Show Notes

    Topics: Bit Operations, Blogging, Career Advancement, Career Responsibility, Computer Science, Failure and Learning, Interviewing, Learning, Managing Engineers, Mentoring, Sponsoring, Teamwork and Team Leadership, Trust, Web Development, Writing

    Companies

    Etsy

    Introduction

    For years, Will Gallego believed the way to advance as an engineer was to be better than those around him. In interviews, he focused on stumping candidates with arcane technical questions. As a manager, he still saw himself as an individual contributor, and shipped code without communicating. But then he joined Etsy, and realized that the senior engineers around him were helping themselves most of all by making those around them better. The culture of learning and blameless postmortems spearheaded by then-CTO John Allspaw shaped his thinking, and he began to see his past experience in a new light. Will focused on helping his colleagues succeed and was rewarded with a Staff Engineer role. Then he took it further, working with a recruiter friend to counsel younger engineers, and blogging about personal aspects of the engineering journey and how to reimagine the technical interviewing process. Along the way, Will discovered that paying back pays off for everyone.

    Guest Bio

    Will Gallego is a systems engineer with 15+ years of experience in the web development field, currently as a Staff Engineer at Etsy. Comfortable with several parts of the stack, he focuses now on building scalable, distributed backend systems and tools to help engineers grow. He believes in a free and open internet, blame-aware postmortems, and pronouncing gif with a soft “G”.

    Links

    Will Gallego’s Blog Will Gallego blog post: “On Becoming an Author” Twitter: @wcgallego “Report from the SNAFUcatchers Workshop on Coping With Complexity (From a workshop on conducting blameless postmortems)” Interview Question: “What happens when you type ‘google.com’ into a browser?” Code as Craft: Etsy Engineering Blog Twtiter: @codeascraft Twitter: @allspaw (John Allspaw’s Twitter) “What Does Sponsorship Look Like?” (Article about mentorship and sponsorship by Lara Hogan) Twitter: @lara_hoganTranscript

    Host
    Hello and welcome to Using Reflection, a podcast about humans engineering, and we’re here today with Will Gallego. Will, why don’t you go ahead and introduce yourself and then we’ll get into the conversation.

    Will Gallego
    Sure. I’m a staff engineer at Etsy. For about six and a half years now and I’ve been doing professional web development in one capacity or another for 15 years and you know, bouncing around from startup to startup. Landed at Etsy a couple of years ago and been doing back end since.

    Host
    I know one of the things that you wanted to talk about today that is also very interesting to me and I’ve covered it on three previous episodes is issues around recruiting and hiring of engineers. So why don’t we start a little earlier and your story and we can kind of work our way through some of your experiences that have led you to kind of where you are now, which is blogging about and working on a book about recruiting with the idea that a lot of the recruiting process now is not a complete gauge of a person’s ability maybe and their success. Not a good measure of what they’ll be doing day to day, and maybe not the best avenue in for the most people into the industry.

    Will Gallego
    Yeah. I feel like when I came to Etsy it was very much a wake up of understanding that being a better engineer isn’t just learning the latest technology or trying to shoehorn some new technology into your stock. It’s trying to understand how you work with teams and how you’re trying to level yourself up by making other engineers around you more understanding, more empathetic. That team collaboration, building that together is what makes great products and therefore makes great engineering organizations. Learning about trying to be a senior engineer at Etsy, I was trying to just catch up with this large scale product that I’ve ever worked with before. I’ve never been with a company as large as Etsy in my professional career. And so trying to understand there’s this big stack to learn all this new stuff. And I spent the first two or three years at Etsy trying to just really deeply understand that and finally had this kind of epiphany I suppose, thinking that looking around at people who had leveled up to, you know, IC4, staff engineering, senior staff engineering, higher IC’s at the company and seeing what they’re doing, and, sure they have experience with these large- scale technologies; they’re knowledgeable about how they work and what goes wrong and how to adapt to those failures, but most of their work wasn’t just I’m sitting front of a terminal and I’m typing things out. It was I’m going to be a lead dev for a team and that means trying to scale up the work that other people are doing, and in that case you need to try to train other engineers and understand what they’re going through and in response try to adapt your understanding of what they need around that.

    Will Gallego
    I started trying to look at other engineers who were more junior engineers at Etsy and try and help them out, and seeing a lot of them come in and interviewing myself I realized my interview practices were terible. I was giving all the terrible interviews that you kind of hear about in horror stories. I was giving esoteric trivia. I was giving very specifics about languages. I was giving puzzles of like, here’s a graph tell me what this is, and not giving any kind of insight into that, just you know, “Freeform it. Go.” And a while back we had some practice on, okay, our interview isn’t going right. We need to, as a smaller team, kind of take this apart and see where it’s going wrong and kind of tag team this. And I started realizing that, okay, the interviewer side is, it’s not accurate. It’s not reflective of what it means to be in the org. How can we change that? And then following that, I was trying to focus on, well sure, the interview side isn’t good either but do engineers themselves know what they’re getting into when they walk into an interview room?

    Will Gallego
    I started just typing it out a couple of notes. This is actually from a trip it took to Belgium last summer. I was at a conference for Resilience engineering. I was giving a conference talk to some colleagues about our culture around postmortems at Etsy and how we tried to emphasize adaptability in our failures. Coming home, I had about two hours sleep. I was in a flophouse kind of hotel about 20 minutes outside the airport. Uh, it was like 6:30 morning. I’ve got no sleep and I started writing down some of these notes and ideas. Going through a couple pages of it, I realize this is more than just like a blog post or even a conference talk that could I give to someone. There is more here that I’m trying to dissect and really I understand about what my own feelings were towards pairing someone for an interview process. That’s kind of led me to the last couple months, and I’ve been really inspired by other people on Twitter who have been trying to help junior devs or understand their own interview practices, and I’m just trying to piece from that.

    Host
    One thing that caught my attention kind of from the start of that narrative was how much your perspective changed on what it meant to be senior when you came to Etsy. Do you think the culture at Etsy in any way taught you things you hadn’t understood before about being part of a team team success, and how much being senior really means helping others on the team succeed?

    Will Gallego
    Without a doubt. This all stems from the simple idea of having a learning culture and a lot of our learning culture stems from our postmortem process. The idea that you can walk into a room and know that you’re not going to feel the burden of being blamed or no one’s going to point fingers at you if something went wrong and you were involved in the actions. You can openly speak about the events that happened from that. The idea is that if we can all understand what our mindsets we’re going into that, what our thinking was when an incident occurred and why we thought the actions we took were the best actions at the time, then the falsehood of human error being at fault just falls away. And so, stemming from that, the idea of being a senior engineer doesn’t mean knowing everything and being perfect and having an encyclopedic knowledge of every single technology in your stack. It means understanding that tense situations happen. You’re trying to do your best and as a team you need to understand what the needs of your teammates and people you don’t even work with often are, and after the fact when things do go wrong, we can understand those decision making inflection points and learn from that.

    Host
    So the post mortem was a real revelation to you. I know that blameless postmortems have become more popular. I also, my understanding is at least that partly the prevalence now of that idea was promoted by the former CTO there, John Allsapw, so I know it was a big part of the culture there. Did you have experiences with other people there earlier in your time there who mentored you, who showed you by examplet he value and a expectation around helping others level up?

    Will Gallego
    Oh, for sure. For the first three years at Etsy I was lucky enough to sit across from Allspaw, and that was just hugely influential. This feels like one of those inflection points for me where I was able to just be in the right place at the right time and learn from people who genuinely cared and they wanted me to get better and for no better reason then seeing others succeed. That is hugely influential when you can see a culture of people who want you to win. It’s not about trying to score points off people or be right or outdo people. It’s trying to build everyone up. It’s unbelievable. And I’m so lucky to have been in that kind of situation.

    Host
    Not to slag where you were previously, but these were new experiences for you. This kind of thing?

    Will Gallego
    (Chuckles) I’ve gotten chewed out at previous jobs and that’s unfortunate and you know, it doesn’t do any good. It doesn’t help anyone. You feel good for about 10 seconds and then you feel bad that you yelled at someone. The person feels bad for, I don’t know, months, years, however long it burdens them. And you haven’t solved the problem. You haven’t learned anything.

    Host
    You all were looking at your interview process and realizing there are aspects of it you thought were inadequate or could be improved. So can you share any particulars there and what actions you took to try to improve that?

    Will Gallego
    Yeah, so I will speak to my own failures and interviews in particular because I think I got firsthand experience of course back and I’ve got the best ware stories around it. For a long time, I was using this one interview question. It was, “Given an integer, write a function that will tell me if that integer is a power of two or not.” And this was a question I actually got from a Google interview when I interviewed, I don’t know, 12, 11 years ago, something like that. And I completely bombed on it. It was a phone interview, it was just a screener, and the interviewer, gave me that question and I completely flubbed it. And then he asked it on the flip side, he actually told me the answer and said okay, well here’s a function that would do that. Can you tell me what this function does? It was a bitwise operation for figuring it out and I completely flubbed what that was doing. And they said,”Okay, we’ll be in touch” and of course, you know, I didn’t get any kind of a forward movement on that.

    Will Gallego
    And it stuck with me because I thought, “Well these are the kinds of questions people are asking in interviews. I’m going to use this interview in the future because now I know the answer and I’m feeling like I’m living on my own knowledge.” And I made excuses like, well it was a way of thinking about a problem where they can give multiple answers. And that is good, but really it’s trivia. There’s almost always a standard library or a built-in that’s going to tell you this. And that kind of revelation of like, yeah, this actually isn’t a good question. Asking very esoteric questions about PHP, or things like that. Just general little bits of trivia that you don’t necessarily need to use every day. PHP stuff. Do you know how to read file and do some string manipulation and print out? You’re probably okay. Can you read from a database? Great. But knowing exactly what the function is to do a key sort on an array, like php.net, you look it up, done. And that’s why that question is just a failure as a question.

    Will Gallego
    So I had to rework completely what it meant for me to interview people. A question I’ll give it to you that I still give interviewees today because there’s no cheating at the question, and you can find it on the Internet too. It’s, “You go to your browser, you type Google.com in the search bar. Tell me what happens.” It’s such a broad and deep question that anyone who’s done any kind of development can tell you something about what’s going on and no one knows the answer to every single part of that. Do you go into DNS work and tell me how DNS look-ups work? You tell me what it means to hit a server and the types of servers it could be?. Do you tell me about caching? Do you tell me about databases? Do you tell me about the front end part of it and what the screen is displaying when a browser renders Javascript or CSS and HTML? Do you tell me about the keyboard inputs when you’re pressing the keys on the keyboard and hit Enter? All these levels are each important to specific tasks in an engineering organization. It’s a good question because you can stump someone so – you know stump is the wrong word. You can understand the boundaries of their knowledge and say, okay, well this is where they’re strong this is where they’re weak, and get a good idea of what they’re doing. It’s also a conversation. It’s not a binary answer where you’re trying to give them, here’s the exact number you’re looking for and if they don’t get it they failed it and you really don’t have too much of an insight what they were thinking and they got it exactly right. It’s like, well, they got it right in a second, does that give you an indication of how they develop, how they problem solve around that? That kind of question is really important because I like interview questions that are conversations, not just specific answers.

    Host
    I understand the aspect of that. You’re describing where it’s open ended and the value in that, but it sounds like you also like that kind of question because the interviewee is more comfortable, and that leads back to I think the realization you had about the blameless postmortems, right? And the idea is that everyone, they should feel challenged but not under attack maybe you cou think of it as.

    Will Gallego
    Yeah! There’s so many interviewers who want to prove that they’re smarter than people coming in or making them feel like they have to go through this gauntlet to earn the right to work there. It just, it doesn’t make any sense. It’s self-serving and really it’s self-serving in a very short time. You make your ego a little bigger and you’re passing on good candidates or you’re building that same kind of toxi culture where you’re trying to one-up each other. There’s nothing behind it that I think is worth looking into.

    Host
    Right. So maybe one more follow up and then maybe we can kind of move toward some of the things you’ve been working on, you know, in regards to this. But so going back to the Google question and just playing devil’s advocate. First of all, it’s funny because as you were saying it, I totally resisted the urge to jump in and be like bitshift operator to show that I knew that. So that’s already hilarious and I’m even telling you now as a way of kind of getting over that, right? Which just shows how beguiling this whole thing is about feeding your ego. Right?

    Will Gallego
    Exactly

    Host
    But, but playing devil’s advocate on the question itself, I understand that in almost all domains you would call a library and you wouldn’t necessarily need to know the optimal way to do that manually. But I, I would argue that at Google’s scale, maybe there’s three or four companies where this potentially matters in the world. You know, knowing the absolute most efficient way to do anything is probably a relevant. It’s relevant to them. So I guess my question is, do you think there are some contexts where questions that are much more technical are more relevant. Do you think that at a company like Google where they have such incredible scale, in that situation it might make sense to try to only hire people who are aware of the most efficient way of doing an operation like that. Versus many, many, many other professional situations where as you say, you would rely on, you know, a preexisting solution.

    Will Gallego
    I would say that’s a poor filter question. It doesn’t indicate that, say I came up with a bunch of other great solutions for power of two, but not exactly using the bitwise operaation. Does that mean I’m knowledgeable enough to do this? Was it a requirement that I have to know I should be using bitwise operations here? Did it indicate that I do know bitwise operations or not? I might’ve thought about bitwise operations in other contexts, but not in this one and still known how to use them and been capable and with the right tools operate at that efficient scale. And even flipped on the reverse on that, I don’t have those skills. How hard would it be to teach someone how to use bitwise operations? I mean a day, two days, you know, that’s not that hard. That’s being pretty generous I think in terms of learning how to do those operations. So it doesn’t show that I can learn on the job. It doesn’t showcase what skills I have. It doesn’t showcase how I’d approach discussion or how a reason around problem. It shows that, did I memorize or did I immediately come up with a solution that someone thought of as this is the most efficient way to do it. I think that we rarely in engineering have the most efficient solution to a problem right away. In web development, game dev, application development, whereever you’re doing it, our most efficient ideas usually come from, okay, I’m proposing this as a solution to the problem. Here are three alternatives to it. Let’s debate them, let’s go through the pros and cons of them and try to fit whichever one is going to work for us the best. That is in my mind the idea of high efficiency for a company, how we can build the best product is going to do he most good for us while doing the least evil I suppose.

    Host
    Right. So that totally makes sense from a product point of view. And from a purely technical point of view asserting that any one solution is the most efficient along any axis of measurement is irrelevant. What’s relevant is measuring performance, right? That’s the engineering part of this. That’s an engineering part of the job is 
 right. I mean, you know, let’s say you need to do some division on a webpage. Well, you would measure in different browsers, right, and you would see which is the most efficient way to do it if you needed to be that efficient, you know, and, and I think a lot of the time, again, that’s not as important as it might be in that situation. This is interesting how this really simple question is raising all these issues, right?

    Host
    I think there are like cultural signifiers attached to these interview questions and in particular this one I happened to know because the first language I learned was C, and for whatever reason those operators, like every intro C book I read, you know, at that time, like they cover those operators. And so it’s like this thing of when they’re asking that question, I think they’re really kind of asking are you a C/C++ person or are you some other kind of person. Different languages in part because of their history and culture and who used them, and in part because their strengths and their, where they way they lead you, the inclinations they lead you toward, and therefore the use cases that are most often used for, you know, have really different domain concerns. Like as someone who’s spent a fair amount of my time professionally in both Python and C++, there are so many things you think about it in C++ that you just don’t bother with in Python around efficient use of memory and most efficient, uh, you know, like everything, every hoop you jump through to avoid allocations in C++, you just write the most readable code you can write in Python.

    Host
    I think this question is actually an example of the cultural aspects of the interview questions. So does bias come in on questions not just to show how smart you are or emphasize traditional computer science, but also, I don’t know because you sort of favor one approach to software development over another?

    Will Gallego
    100 percent. I think bias is not necessarily, “I think I’m better than this person,” or “I am trying to prove something.” Sometimes it’s just these are tools that I am very comfortable with and there is the assumption that I’m doing my job, I think I’m good at my job, so if someone else were to be in my shoes in this job, I think they would require these exact same tools to do this job. And we don’t necessarily always favor people with outside information or new experiences that would be good for our job that we don’t possess, and so to try to find that Venn diagram of what I know, what they know and the overlap there and then try to incorporate stuff that they know that I don’t into this position and say, “Oh, that’s really great.” That’s not really part of our typical interview process because we want to go in there and feel like we asked a question, we know the answer to what they’re going to say or we have, you know, the teacher’s book with the answers in the back. So if anything comes up well we’re okay too. We want to feel comfortable in interviews as much as we can and feeling knowledgeable and in control of the interview is part of that.

    Host
    Maybe another way to approach this question is, then what should be part of the interview process? Like what, you know, this is probably where you landed sometime after kind of having these realizations is okay, so I see all these things that are wrong and you had these conversations that at Etsy around, you know, what should we change. What do you think the right approach to interview content is and what do you think the interview should cover and what do you think it should be evaluating?

    Will Gallego
    My ideal questions are ones that can understand what a candidate’s abilities are in terms of things they do know and how they can build off of it and how the gap between what they know, what I know and what is necessary for working in this company can all kind of be bridged. When I asked the question about “Type Google.com in a browser, what do you get,” I’m trying to see what they know that I might not know. “Wow. They were really good at understanding TCP connections or the difference between SSL and tls and they have experience with that.” Maybe I ask them “Oh did you upgrade your back-end servers because of that?” And so I started building a conversation around that, and all the times we discuss things in our engineering culture we’re trying to round-table ideas like that. And that’s why I like interviews that can bring that dialogue to the forefront. And so is this person someone that I can share ideas with; are they coming in with ideas that I know and ideas that I don’t know and really bolster what we’re missing from the org. Not just be another cog exact clone of what we already have.

    Host
    So then you had this realization that you needed to start helping those around you more. What are some things you did to do that? And I guess it’s worked. I see you relatively recently moved into a staff engineer role. So your efforts and shift in emphasis there and so on were recognized. What did you start to do in particular to help those around you and then maybe you could lead into, you know, what you’re doing with your blog and the book you’re working on and how you think you as a person can kind of help a wider range of people.

    Will Gallego
    Take a step back and realizing I’m not going to be able to know everything and do everything is such a revelation point I think in an engineer’s career, that no matter how smart you are, no matter how good you are with anything, you can’t do everything in a given a fixed amount of time and so you need other people around you. You’re not going to scale a company on one engineer. I don’t care how smart they are, I don’t care how amazing they are. How fast they can debug things, how perfect their code is, no one is going to be able to build and entire product, and entire company on their own. So with that in mind, it’s in your best interest to have a company in which you have engineers who can elevate themselves and do better. So if I can spend an hour of my time too write down a runbook, update a Wiki, give a closed doors talk inside my company to other engineers and impart information to them and then they get better and then as an org we are more successful, it’s in my best interest. So to be purely selfish in that context, but there’s also something to be said about all the times that I’ve been given chances, given my first job coming out of college where I thought, you know, I’ve got a CS degree, I must be good at this. Then walking into interviews and just completely bombing on them. And then I first get a job in a startup and realizing my CTO at the time was taking care of me and trying to help me level up. I need to do the same thing in my career as well. I need to help out those around me.

    Will Gallego
    And so what does that mean for someone is a senior engineer to help level themselves up in that context. It means understanding when people are having problems before they even know it. When they do have problems and they come to you how to respond to that? It means when you are butting heads with someone to recognize your own failures, when your own you idiosyncracies are getting in your own way and try to move past them as best you can and try to minimize that and and understand when you’re going wrong. So part of that is mentoring other people and sponsoring, which are two really important distinct things at a company. When those other people get that sponsporthip, they feel like they can grow and they pass it on – going back again to elevating conversations and the abilities of everyone around you and scaling up.

    Will Gallego
    Part of this also was understanding that I can get better at this by helping people who aren’t at Etsy as well. So I started doing mock interviews and I started trying to reach out. We have a mutual friend in Kainne Hansberry who’s a a recruiter, and I reached out to him and said, “Hey, if you have people who are having trouble getting into interviews, getting their foot in the door, talk to me. I’ll set some mock interviews.” And I was giving tips around that trying to understand what problems people were going through. Were they feeling like they don’t know everything and they’re feeling, you know, that burn of imposter syndrome that was just preventing them from getting any kind of traction in landing a job and moving past that. Understanding they’re coming from a previous job and they might be burned out. How do they take care better care of themselves? Little things like that are things that we’re just not educating people on how to approach those problems. And so I got really fired up about tha, and I really wanted to avoid problem of other people falling into these traps. The hurdles that I’ve run into over the years. I can write down and say, “Hey, watch out for these problems,” and somebody else can avoid them and level themselves up faster than I can.

    Will Gallego
    I have no doubt that people I’m talking to are smarter than me and are going to go further in the industry that I am. They just need the right direction to do it. I’m not going to be the smartest engineer in the world. That’s okay. I want to help people so they can be better engineers. That’s a really great feelings to be, again, a little selfish about it too. That makes me feel like I’m producing, and that’s one of the reasons I got into engineering in the first place. I want it to feel like I was building something and making something more than myself. And it doesn’t always have to be just I wrote down these lines of code.

    Host
    Right. Then have you ever considered management? What do you think about that contrast where you’re trying to have an impact on all those around you, but still being an individual contributor?

    Will Gallego
    Yeah, management is tough. We don’t give nearly enough credit to good managers. There’s been the idea that you do a good job being an engineer for a while, you’re an IC and you’re typing code and you’re building stuff and then you hit a point and they say, “Okay, we want to promote you. You’re now a manager.” And you’re doing very different things you’ve been doing in the past and I don’t think managing is for everyone. I think management is a really tough skill to build. I think that senior level IC’s need to have some part of them that is manager-like. You need to lead a team. You need to know how to run an architectural review. You need to understand how to run a postmortem. You need to understand how to people-manage in one-on-ones with people if they’re having tough times, and that’s again part of the senior management or senior engineering I should say. As for myself, I was a manager in my previous job to Etsy and I wasn’t good at it, because was doing engineering stuff. I was lone-wolfing too much. I was just going off in the corner and typing in code and dropping it on the server and being done with it. I wasn’t doing enough collaboration with other engineers and I just didn’t have the skills for managing other people. And that might have scarred me a little bit for management, but I think at some point I’m always going to want to have hands on a keyboard and I’m always going to want to try to problem-solve technical issues, and I think that if you want to really be a manager that you need to dedicate yourself to people around you and just do that. It’s really tough to build in IC time as a manager too. So I really wanted to focus on how I can elevate other people as an IC.

    Host
    Yeah, I mean I can definitely relate to that. I’ve been in both kinds of roles in my career and I’m kind of back on the individual contributor side the last few years now and there are big trade offs. So you know it’s very rewarding to help other people as you say, but it’s very hard to resist the urge to try to keep your hand in and do each job poorly when you’re a manager. Like keep trying to contribute instead of only focusing on the team, and I think that’s a sign that you’re not ready to do it or it’s not for you if you can’t make your whole work the success of everyone else. Your whole work. So I definitely relate to that.

    Will Gallego
    I don’t want to discourage people from that too. Like there are people who are junior devs right now who one day want to be CTO’s and they should absolutely focus on the path for them. I just want to make sure there’s an opening for the IC who just wants to be really good at developing or architecting a really slick front end app or etc. etc. That sort of thing too.

    Host
    Right, and it sounds like Etsy is doing a better than the mean kind of job of with these different levels of IC and these different expectations of having a wider and wider impact while still being considered and expected to be an individual contributor.

    Will Gallego
    Yeah. We explicitly have two tracks, one for ICs and one for managers, and having that laid out in front of you and saying, “I can still make progress without having to worry, am I going to be locked into this position forever?” You know, that’s really helpful. It’s inspiring and makes you want to do good at your job.

    Host
    Right. And also it’s interesting how the higher levels, it’s really a lot about types of contributions that are more like what a manager would do. Like in a certain sense, you’re really trying to become more of a force multiplier for those around you. Right? It’s a given that you have a level of skill where you can contribute at a senior level.

    Host
    So then maybe you want to also talk a little about, you know, moving beyond just the workplace and you’ve started a blog on this stuff and you’re working on a book on this. So if you want to get into some of the specifics of what you’re trying to cover with those efforts.

    Will Gallego
    So all these ideas I’ve been bouncing around my head and writing notes down. I’m trying to, you know, expand upon them and, I was saying, about six or seven months ago, I finally wrote two or three pages down coming back from a conference. I thought, “Well, okay, this is more than just, you know, a quick blurb.” And the ideas around that were trying to get beyond teaching engineers who want to break into the industry, okay, memorize, merge sort and quicksort and know, you know, how to rebalance our Red Black tree and, you know, these important algorithms and important parts of computer science, but they’re not necessarily what you’re going to be doing on your day to day job, and not going to be, you know, “Wait, you memorize this. Now put it aside and save it for the next time you have to interview.” It’s an exercise in a memorize-and-then-quickly-forget-it so you can actually do what you want to do.

    Will Gallego
    I would love to approach this as the idea that I don’t want people to just squeak by an interview. I want them to build foundational skills that will allow them to hold strong conversations with their coworkers and to be able to learn fundamental skills in their job that [so that] the interview process itself almost feels like a side effect. That you’re a good engineer and therefore, yeah, you get an interview, but you’re also a good engineer. That should be the focus, not just how do you pass the interview. So many interview books focus on how do you get your foot in the door, how do you just get into the company and ignore being a good engineer. Now, there are solid points that these books bring up. There are algorithms that you should know because, yeah this company is going to ask you about it, or this is the structure of, you know, Amazon, Google, Facebook, YouTube, Twitter, etc. etc., and if you want to work at those companies, it would help to know what the interview is structured is going to be like.

    Will Gallego
    But there are how many countless jobs that aren’t at those big companies. And how does knowing the structure of the other companies help you with a small startup? How does it help you understand what it’s like to freelance? How does it help to understand should I worry about what kind of benefits this company is givin me? Should I worry about being a remote engineer versus a local engineer who can commute an hour-and-a-half to the office each day? Understanding what it means to be discouraged and try to get in the industry and understand that when you’re learning something, when you’re first trying to be an engineer, that’s going to carry with you for the rest of your career. People who are senior engineer’s people have been 15, 20, 25 years still in the industry, they’re still learning. They’re still struggling. They’re still trying to build up themselves as engineers as well. It doesn’t stop there, so to understand the entire learning process as a memorized and forget defeats the purpose of what it means to be an engineer and how to be someone who can collaborate and work with other engineers to do the best job. It’s not just you have to be this mythical 10 times ninja Jedi engineer. You know all these falsehoods that we kind of throw at people. You have to be, otherwise you’re worthless as an engineer, that’s not the case. You know, I would take three good engineers who can all work together over one amazing engineer who’s – I don’t want to say amazing, you know, I would say good at programming something – who’s impossible to work with, who you know, snaps at people and wants to be left alone. That doesn’t do any good for a company. So focusing on what it means to be empathetic and kind, and as cheesy as that sounds, who wants to care about other people around them to work with them. That goes so much further than knowing an esoteric algorithm.

    Host
    It sounds like really what you’re trying to work on here is more of a, a distillation of the experience of the senior person to give to the junior people. The thing that this reminds me the most of, I would say is like “The Pragmatic Programmer.” It really has a lot of the point of view you’re talking about. And I think it’s some of the same life lessons, but it’s also maybe a different angle in the sense that it’s more professional and less personal. And certainly less focused on some of the specifics of the interview process and what it means to be working somewhere. It’s more like good engineering values, what are good engineering values. That’s part of what you’re talking about, but it’s also just what does it mean to be like a good person as an engineer, which really I think is an aspect of what you’re talking about that’s relatively unique and hasn’t been covered. And frankly in the current environment, you know, there’s so much talk about toxic aspects of tech culture the last few years, and very public embarrassing stories about that, across some of the largest and most revered companies in the industry. I mean, I think it’s a very relevant topic to pursue. Yeah. So, I mean really I wish you the best and promoting these ideas and, and I’m happy to have been a small part of that.

    Host
    So is there anything else that you want to cover or you think we missed or you’d like to talk about?

    Will Gallego
    Sure. I would say first and foremost I want to make sure people, especially if they’re a junior engineers looking to break in, take care of yourself. And that means so many different things. It means don’t let companies push you around. Don’t let companies tell you what you have to know. Understand when you’re working two jobs where you have try to update a Github and do a portfolio and try to do open source work and do blogs and conferences and speaking 
 like, you get to decide what it means to be an engineer. You don’t have to listen to anyone say you’re not living up to the ideals of what it means because you’re not doing what I’m doing. If you didn’t get a formal education, if you didn’t go to bootcamps, if you learned this on your own, that’s okay. If you did go to a college, that’s good too. There are so many different paths to get into engineering. There’s no single one right way to get in and to understand that you need to build on what it means to be an engineer for yourself, for your own personal goals.

    Credits

    Host: Mark S. Weiss Intro and Outro Music: “Florida Song” Copyright 2016 by Photographs (Mark S. Weiss). All rights reserved. Ad Intro Music: “Woozy” Copyright 2015 by Photographs (Mark S. Weiss). All rights reserved. All Interview content Copyright 2018 by Using Reflection and Mark S. Weiss. All rights reserved.
  • Show Notes

    Topics: Ad Tech, Alpha Go, Amazon Web Services, Applied Mathematics, Churn Modeling, Kubernetes, Ethics of AI, Google, Hydrology, Machine Learning, Managing Engineers, Natural Language Processing, Neural Networks, Open Source, Product Development, Prof. Robert Williamson, Real-Time Bidding (RTB), Social Responsibility, Teamwork and Team Leadership, TensorFlow, Trust, UX (User Experience) Design

    Companies

    ElementAI mldb.ai Datacratic Idilia

    Projects: RTBkit

    Introduction

    As a boy, Jeremy Barnes learned from his hydrologist father who was collecting data from small devices in remote terrain that small amounts of data can support useful models and make lives better. These themes shaped his career, as he spent the first two decades studying machine learning and creating systems that created value by creating new knowledge. After founding and selling two startups, and learning the power of open source software to “put ideas into the public record” and influence an industry with RTBkit, he is embarking on a new challenge. As Chief Architect at ElementAI, he is part of applied research and product design efforts shaping a future of AI that accounts for human users, promotes transparent AI decision making and human trust in AI systems, and is explicitly pursuing AI for Good, starting with a foundation by that name. Jeremy looks back on what he has learned as an entrepreneur, engineer, data scientist, team member and leader, and looks ahead to his own future and the future we are all building.

    Guest Bio

    Jeremy Barnes is a Montreal-based engineer, researcher and entrepreneur in the domain of artificial intelligence. Since arriving from Australia in 2001, he has founded and served as CTO and CEO of several companies in AI, including Datacratic (to iPerceptions) and mldb.ai (to Element AI). He’s currently the Chief Architect at Element AI, where he is responsible for building out the core artificial intelligence platform and ensuring that the research, product, customer projects and other activities all fit together to enable a broad, practical and humane application of recent AI techniques. Element AI advances cutting-edge AI research and turn it into scalable solutions that make businesses safer, stronger, and more agile.

    Notes

    05:30 - AI for Good Lab - London 06:00 - His role is to investigate AI as a driver for economic behavior which drive impact on society, especially for corporate actions 06:30 - AI needs to solve problems which are good for society 07:00 - Trying to give users a strong voice in AI in products 09:00-10:00 - AI systems can discover/predict things humans haven’t found before, surprising, but won’t be trusted unless decisions are explained and system build trust. Alpha Go example. Element AI encourages companies to do both of these things - humans in UX process and design products with explicable decisioning that can earn trust. Even great product if untrusted will fail 10:00 - Applied research group. Consult with strong companies. Create products, structure and design there but no data. Customer data completes the product for that customer. 12:00 - Inspired by hydrologist father collecting data in the field 13:30 - “Data is not something that comes to you. It’s actually something that you need to go and get.” 14:00 - Learned you can create good models from small amounts of data 15:00 - Diabetic, realized he was learning from observation, from data, without new effort 16:00 - Idilia - NL as a service 16:30 - Design data collection mechanism, tepresent problems in data, and let algorithms solve problems 17:00 - Learned a huge amount at Idilia and realized it would have a huge impact 18:30 - Can small amounts of data still solve some problems? Or is this era where big companies and their data dominate? 20:00 - AI misconception that data is fixed - “either you have data or you don’t” 21:00 - It’s actually a continuum between modeling and the amount of data, you can apply models from large data sets to smaller problems or do more involved modeling and still get good results from smaller data sets 21:30 - Churn modeling - zero-sum game, it’s actually about competing better. Better solution is actually to deliver a better product, rather than use AI to perpetually steal customers. Use AI to design a better product. 23:00 - AI is still just another tool for product development, not a replacement 24:15 - “People will do almost anything to try magic bullet solutions, just to see if they work. 
 That doesn’t mean they are actually solving a real problem. It just means they tried enough things that something worked.” 25:00 - Real value is creating new knowledge. Neural networks don’t create new knowledge. “Knowledge 
 is the basis of all competitive advantage.” 26:15 - RTBkit 27:00 - Startups that are solving new problems, inventing new IP 27:30 - Market timing very hard to get right. Idillia 7-10 years too early. 28:00 - “Missionary work” - explaining that your product idea is the future. Fed his ego but recognized as an anti-pattern 29:15 - Tensorflow - open source but really an extension of a corporate entity - Google 29:30 - Open source is a way to put an idea into the public without needing perfect market timing. Put the idea into the public record. 30:00 - RTBkit maybe a year early. Changed perception in the industry that you can and should own your own bidding process. Project not vibrant but had an impact on the market 31:00 - Kubernetes as Google’s masterful attack on AWS by making workloads portable in and out 32:00 - Google has become very good at using open source as a weapon and to create a moat 34:00 - Kubernetes at a right level of abstraction. It reduces lock-in and actually enforces competition among the very large companies. 35:00 - But big companies using open source this way hurts all the startups in a market. 36:30 - What have you learned about yourself as a leader? 37:00 - Started out career thinking I was best at every aspect of the work. Learned humility from those around me. 38:30 - Recognizing I can have the most impact by supporting everyone else and connecting their work 39:30 - How do you create the conditions for a team to thrive? 40:00 - In teams that work well you need to build up trust, safety and communication. You need to make sure the team is able to take risks. 41:30 - “I do struggle to have a career plan for myself 
 I love to learn. I love what I do because I get to learn and have fantastic people around me.” 42:00 - ElementAI a chance to work with larger companies. Larger companies have entrepreneurial initiatives also. 43:00 - Learn how to deliver AI innovation at scale

    Links

    TechCrunch: “Element AI, a platform for companies to build AI solutions, raises $102M” VentureBeat: “Why Element.AI’s $102 million round is just the beginning” AI4Good Philip K. Dick Bob Williamson Home Page

    Credits

    Host: Mark S. Weiss Intro and Outro Music: “Florida Song” Copyright 2016 by Photographs (Mark S. Weiss). All rights reserved. Ad Intro Music: “Woozy” Copyright 2015 by Photographs (Mark S. Weiss). All rights reserved. All Interview content Copyright 2018 by Using Reflection and Mark S. Weiss. All rights reserved.
  • Show Notes

    Topics: Career Advancement, Career Change, Code Schools, Computer Science Education,Learning, Podcasting, Social Responsibility

    Companies

    Cogo Labs Madefire

    Introduction

    A funny thing happened to Max Mautner after he landed a job as a technical analyst: he noticed his job actually involved writing lots of code. Soon afterhe realized programming was fun, there was high demand for programmers, and hecould get paid more if he could work his way into a position with “engineer”rather than “analyst” in the title. Two jobs later he’d achieved his goal andis now a lead platform engineer at Madefire, creators of an innovativepublishing platform combining animation and comic books. As he leveled up Maxremained a keen observer of how to improve as an engineer and advance hiscareer. He also noticed many of his friends and colleagues had likewisefollowed a non-traditional path into engineering, so he started to the podcast“The Accidental Engineer” to “make his friends look good,” and to inspireaspiring engineers with the stories of those who had pivoted into the fieldbefore them.

    Max’s insights will equally help those thinking of pursuing software engineering and those already in the field who are taking stock and plotting their next move.

    Guest Bio

    Max Mautner has held roles as a systems software engineer, a financial trader, an email spammer, and a friend.

    Like “Using Reflection”, Max profiles people in tech at The Accidental Engineer with an aim at persuading others to enter the field who might otherwise be deterred!

    His favorite food and drink are pickled herring and Diet Pepsi.

    Favorite programming language? Python

    Favorite stimulant? Espresso

    Links

    “The Accidental Engineer” Podcast: https://theaccidentalengineer.com/ https://maxmautner.com/ “The Accidental Engineer” episode with Spencer Kline

    Credits

    Host: Mark S. Weiss Intro and Outro Music: “Florida Song” Copyright 2016 by Photographs (Mark S. Weiss). All rights reserved. Ad Intro Music: “Woozy” Copyright 2015 by Photographs (Mark S. Weiss). All rights reserved. All Interview content Copyright 2018 by Using Reflection and Mark S. Weiss. All rights reserved.
  • Show Notes

    Topics: 8086 CPU, Code Schools, Computer Science, Diversity, IBM PC,International Business, Java, Managing Engineers, Mentoring, Recruiting,Software Engineering, Teamwork and Team Leadership, Trust

    Companies

    PureWow IBM

    Organizations

    New York On Tech - Home New York On Tech - Host an Intern New York On Tech - Volunteer to Teach or Become a Mentor

    Introduction

    His dad an IBM salesman, Tony Jackson grew up in a houseful of gadgets andcomputers, so taking computers apart, reassembling them, and programming thembecame second nature to him. Later, enrolled in international business incollege, he realized majoring in computer science could lead to a career doingwhat he loved and “not working a day in his life.” Jackson went on to join IBMhimself, spending 9 years coding for Big Blue and partner companies beforemoving into a variety of engineering and management roles. As a manager, hehas focused on sincerity, honesty and mentoring, and Jackson speaks proudly ofthe relationships he has forged and maintained over many years and many jobs.Tony also volunteers for NY On Tech, an organization that teaches classes andarranges internships for high-school students from backgroundsunderrepresented in tech. Jackson explains why it’s both doing good and goodbusiness for businesses to work with NY On Tech to both tap into its pool oftalented interns and to learn to draw and retain candidates from a wider pool.All the way through, Jackson speaks with an energy, optimism and candor thatare infectious.

    Guest Bio

    Tony Jackson is a VP of Engineering at PureWow and a Member of the Board ofAdvisers at New York On Tech. He started his software engineering career atIBM. He has since held lead software engineer, senior software engineer,architect and web developer titles at Prudential, USA Today, the FederalReserve, Everyday Health and Bloomberg, prior to joining PureWow. He is alsothe founder and CTO of the technology consultantcy Ranjax Media SolutionsInc., based in New York, N.Y.

    Links

    IBM PC 8086 CPU International Business Java Version History

    Credits

    Host: Mark S. Weiss Intro and Outro Music: “Florida Song” Copyright 2016 by Photographs (Mark S. Weiss). All rights reserved. Ad Intro Music: “Woozy” Copyright 2015 by Photographs (Mark S. Weiss). All rights reserved. All Interview content Copyright 2018 by Using Reflection and Mark S. Weiss. All rights reserved.
  • Show Notes

    Topics: Architecture, Automation, Autodesk AutoCAD, Autodesk Revit, BuildingInformation Modeling (BIM), Civil Engineering, Electrical Engineering, GeneralStructural Analysis (GSA), Hypermesh, Managing Engineers, Rhino, SeismicEngineering, Structural Engineering

    Companies

    Arup

    Introduction

    Even the word we use to describe very tall buildings, “skyscrapers,” isintended to conjure a kind of mythological wonder. But, like any technologythat seems magical when insufficiently understood, skyscrapers are products,the result of design and engineering. What does it take to build a building?How are the many engineering and design disciplines, people, companies andgoals reconciled, aligned and coordinated? In this episode we talk to David deKoning, a Senior Structural Engineer at the venerable international designfirm Arup, and find out. David also shares interesting insights on the uniquebusiness structure and culture at Arup, and discusses the two phases of impactthat digital technology has had on design, first digitizing and automatingwork, and then transforming documents into data that can be modeled andmanipulated. It’s a fascinating journey into a complex field that affects ourlives every day and literally creates the skylines we marvel at.

    Guest Bio

    David de Koning is a structural engineer, the Technical Lead of Arup’sMontreal Building Structures team, and the product manager for gsapy, a set ofPython bindings for structural analysis.

    He has been involved in the analysis and design of new and existng buildings,including Tim Horton’s Field, the new Mexico City Airport and the tower of theSagrada Familia in Barcelona.

    He views every project as an opportunity to develop relationships, and toinvestigate how technology can change our work and the structure of our teams.He looks for every opportunity to harness technological change to increase histeam’s skills and to provide more valuable insights and services to Arup’sclients and society.

    Topics and References

    181 Fremont - A San Francisco skyscraper designed by Arup Arup - Key Speech - Speech by Arup founder establishing the core values of the company Autodesk AutoCAD - Design software Autodesk Revit - Design software Building Information Modeling (BIM) - Data and model-driven approach to building design Electrical Engineering Hypermesh - Design software General Structural Analysis (GSA) - Structural Engineering software Rhino - Design software Seismic Engineering Structural Engineering

    Links to Arup’s website describing primary building engineering services:

    Electrical Engineering services Mechanical Engineering services Structural Engineering services Seismic Engineering services

    Credits

    Host: Mark S. Weiss Intro and Outro Music: “Florida Song” Copyright 2016 by Photographs (Mark S. Weiss). All rights reserved. Ad Intro Music: “Woozy” Copyright 2015 by Photographs (Mark S. Weiss). All rights reserved. All Interview content Copyright 2018 by Using Reflection and Mark S. Weiss. All rights reserved.
  • Show Notes

    Topics: AS-400, Consulting, E.F. Codd, MySql, Open Source, Oracle,PL/PgSQL, PostgreSql, Relational Databases

    Companies

    IBM IBM - Rochester Oracle

    Projects: PosgreSql

    Introduction

    As a kid, Corey Huinker had already decided the “token economy” of earninggold stars from from teachers felt pointless, and the only way his parentscould coax A’s and Bs from him in high school was to pay him. Later, at hisfirst internship at IBM, he learned two important lessons: staff employment isno guarantee of job security, and contractors can make more money than staffemployees for doing the same job. Three years into his career, attracted tothe idea of earning an honest wage for honest time spent, he struck out on hisown as a software engineering consultant. Along the way he learned thatspecializing and being better than most people at something is a key toconsulting success. Corey chose relational databases and has since madeseveral contributions to PostgreSql.

    This episode offers a great chance to frankly consider the tradeoffs ofconsulting vs. staff, and to learn how to survive and thrive as a consultantfrom someone who has been doing so for two decades. It’s equally a chance toconsider the enduring strengths of relational databases with an expert. Andfinally, it’s a fun conversation leavened by Corey’s unsparing observationsand dry wit.

    This is Episode 14 of “Using Reflection.”

    Guest Bio

    Corey is the owner of Corlogic Consulting and yes, it’s a play on his firstname. He has a degree in Applied Math from University of Wisconsin - Stout. Hehas made multiple feature contributions to PostgreSql, contributed toPostgreSql core, and spoke several times at the PostgreSql PG Conf in the U.S.and Europe. His inspiration to get into programming came from a Big Trak hegot for Christmas one year, and too many hours playing SimCity. He spent his19th birthday working for IBM. He has performed comedy improv, been a rollerderby referee, and pursues interests in history and urban planning.

    Links

    Business

    IBM ’90s layoffs (Business Insider history) Quora: “Why did Oracle buy MySQL if they don’t even make money out of it?”

    Database Theory and Concepts

    E.F. Codd (Wikipedia) Codd’s 12 Rules for RDBMS (Wikipedia) DB Transactions (Wikipedia)

    Database Procedural Languages

    PL/PgSQL (Wikipedia) PL/SQL (Wikipedia)

    Commercial Relational Databases

    PGXN - PosgreSql Extension Network A Brief History of the IBM AS/400 and iSeries (IBM archives) IBM DB2 (IBM product page) Microsoft SqlServer (Microsoft product page) MySql (Product home page) MySql Transactional and Locking Statements

    Credits

    Host: Mark S. Weiss Intro and Outro Music: “Florida Song” Copyright 2016 by Photographs (Mark S. Weiss). All rights reserved. Ad Intro Music: “Woozy” Copyright 2015 by Photographs (Mark S. Weiss). All rights reserved. All Interview content Copyright 2018 by Using Reflection and Mark S. Weiss. All rights reserved.
  • Show Notes

    Topics: Civil Engineering, Environmental Engineering, Power PlanDevelopment, Recruiting, Social Responsibility, Solar and Renewable Energy

    Companies

    JobRobin BCI Solar Clean Energy Associates SunPower Sungevity

    Introduction

    Brad Jester remembers crying as a kid when his brother left the faucetrunning. And he always loved to build things. By studying environmentalengineering and then working in the solar energy industry, he was able tocombine his desire to do environmental good with his passion for engineeringcreation. Brad has a fascinating story to tell about working in various solarand energy companies in California, and in Shanghai and Hong Kong. We’ll learnwhat drove him, and also discuss the fascinating, highly dimensionalcomplexity of large-scale energy projects, which consider factors such asgeography, climate, weather, politics and regulation spoken and unspoken, realestate, materials, construction, and much more. After more than a decadegrappling with this complexity, Brad recently made a personal pivot, startinga tech recruiting startup JobRobin that is using Data Science to help recruitData Scientists. It may seem like a big change, but it’s all one arc to Brad,and he tells us why.

    Guest Bio

    Brad Jester is founder and CEO of JobRobin, a recruiting platform currentlyfocused on the Data Science market that is developing new approaches torecruiting using data and visualization. Before that he spent about 10 yearsworking for energy companies in the U.S and Asia in various leadership andfounder roles, including Sungevity and Sun Power in the the U.S, Clean EnergyAssociates and aaaiiirrr.org in China and BCI Solar in Hong Kong, which he co-founded. Brad has a degree in Civil and Environmental Engineering fromCornell University.

    Links

    Civil Engineering Environmental Engineering Solar Energy Construction Permits in Southeast Asia Doing Business in China

    Credits

    Host: Mark S. Weiss Intro and Outro Music: “Florida Song” Copyright 2016 by Photographs (Mark S. Weiss). All rights reserved. Ad Intro Music: “Woozy” Copyright 2015 by Photographs (Mark S. Weiss). All rights reserved. All Interview content Copyright 2018 by Using Reflection and Mark S. Weiss. All rights reserved.
  • Show Notes

    Topics: AdTech, Analytics, Founding, Managing Engineers, Open Source,Recruiting, Startups, Teamwork and Team Leadership, Time Series Databases

    Companies

    Imply Metamarkets

    Projects: Druid

    Introduction

    What’s it like to work at one of the largest tech companies in the world,Cisco, then be in the first 10 at Metamarkets, a high-growth tech startup? Toco-create a successful open source time series database, Druid, and then co-found and become CEO of a Valley-based, venture-backed startup, Imply, that isbuilding and selling a product on top of the open source project? In thisepisode we’ll find out, as we talk to Imply CEO and co-founder Fangjin Yang.Why is being an engineer first a key to managing product development and tobuilding an engineering team? Why is the data market so complicated, and whatis different about Druid? Why should everyone work at both a big and smallcompany?

    Guest Bio

    Fangjin Yang is the co-founder and CEO of Imply, makers of an event analyticsplatform built on the open-source Druid data store. Previously, Fangjin was alead engineer at Metamarkets and the co-creator of Druid. He was an earlyengineer at Metamarkets, which was recently acquired by Snap, and also took onmultiple non-technical roles for the Druid project, including community andbusiness development and marketing. Before that Fangjin was a softwareengineer at Cisco Systems. He holds Master’s Degree in Computer Engineeringand a Bachelor’s Degree in Electrical Engineering, both from the University ofWaterloo.

    Credits

    Host: Mark S. Weiss Intro and Outro Music: “Florida Song” Copyright 2016 by Photographs (Mark S. Weiss). All rights reserved. Ad Intro Music: “Woozy” Copyright 2015 by Photographs (Mark S. Weiss). All rights reserved. All Interview content Copyright 2018 by Using Reflection and Mark S. Weiss. All rights reserved.
  • Show Notes

    Topics: Addiction Mechanics, Embedded Systems, Facebook Games, Founding,Game Development, Gaming, Managing Engineers, Recruiting, SocialResponsibility, Startups, Teamwork and Team Leadership

    Companies

    interviewing.io CrowdStar Fifth Column Games Tivo Visual Concepts Zynga

    Introduction

    In this episode we are joined by Andrew Marsh, for a lively and intenseconversation about his 15 years in gaming and why he left the industry to co-found engineering interviewing platform interviewing.io. Andrew wanted to co-found a business that scales by serving its customers needs, which he felt wasno longer possible in gaming. Andrew also describes his approach to strategyand management, one that relies on a rigorous but constantly evolving model ofhis business that in turn supports his insight and intuition. And he arguesfor the advantages of interviewing.io’s two-sided marketplace solution to theproblem of engineering recruiting, because the solution is driven by data andby the employer and employee market participants and is therefore open toexpansion. Andrew is the rare technologist who can earn a patent for last-minute code written to save a Tivo feature, and also converse for minutes at atime in fully formed paragraphs.

    So buckle up and enjoy the ride. It’s a fun one.

    Guest Bio

    Andrew Marsh is the Co-Founder and CTO of interviewing.io, a platform forsoftware engineers to anonymously practice technical interviewing withexperienced interviewers and get introductions to prospective employers. Hepreviously worked for about 15 years in the video game industry, as founderand CEO of Fifth Column Games, Lead Engineer and Lead Designer at CrowdStar,Senior Software Engineer at Visual Concepts and Lead Gameplay Engineer atSecret Level. Andrew has also held positions at Tivo and Lawrence BerkeleyNational Labs.

    Links

    FarmTown Farmville Mafia Wars Mob Wars “Moneyball” Paul Graham - “News From the Front” (Essay about the relationship between prestige of college degree and success of tech entrepreneurs) A (Brief) History of Spam Filtering and Deliverability

    Credits

    Host: Mark S. Weiss Intro and Outro Music: “Florida Song” Copyright 2016 by Photographs (Mark S. Weiss). All rights reserved. Ad Intro Music: “Woozy” Copyright 2015 by Photographs (Mark S. Weiss). All rights reserved. All Interview content Copyright 2018 by Using Reflection and Mark S. Weiss. All rights reserved.
  • Show Notes

    Topics: DotCom Bubble, C++, Computer Science, EdTech, Founding, Goal-Setting, Machine Learning, Managing Engineers, Mobile Development, Palm,Social Responsibility, Startups, Teamwork and Team Leadership, Trust

    Companies

    Placedapp Wireless Generation Exit Educational Assessment DIBELS TPRI Nomic Robert Half

    Introduction

    In this episode we are joined by Aaron Boyd for some entertaining nostalgiaabout what high-flying DotCom consultancies told their clients, and moreserious insights about how to manage successful teams and, especially, how tobuild successful teams by hiring high-performing, high-character team members.After riding the dot-com wave, Aaron joined ed-tech startup WirelessGeneration as employee number 7 and left a company with 300 people that wouldsoon very successfully exit to News Corp. He was then a Principal at big-dataplatform Mortar Data, which exited to Datadog, and engineering lead at Nomic.During this journey, Aaron discovered the principle that effective goal-setting is a key reason why companies and teams succeed or fail. This timearound, Aaron is applying that hard-won wisdom, and his insights into whatideas can translate into successful products, as co-founder of Placedapp,which is building a recruiting database integrated with Gmail.

    Guest Bio

    Aaron Boyd is the co-founder of Placedapp, a smart candidate database forrecruiters that lives directly inside GMail. Previously he was lead engineerat Nomic, where he led engineering, including planning, architecture andhiring. Before that, Aaron was a principal at big-data startup Mortar Data,which was acquired by Datadog, and held the positions of lead mobiledeveloper, producer, and director of application development at WirelessGeneration, which he joined as employee 7 and which was acquired in 2010 byNews Corp. Before that Aaron was a senior associate at web consultancy Scient.

    Links

    DotCom Bubble

    Dot Com Bubble Scient

    Software Engineering

    Mobile App Development Content Management Systems

    Engineering Management

    Engineering Career Framework Goal-Setting

    Recruiting

    Contingency Recruiting Applicant Tracking Systems

    Credits

    Host: Mark S. Weiss Intro and Outro Music: “Florida Song” Copyright 2016 by Photographs (Mark S. Weiss). All rights reserved. Ad Intro Music: “Woozy” Copyright 2015 by Photographs (Mark S. Weiss). All rights reserved. All Interview content Copyright 2018 by Using Reflection and Mark S. Weiss. All rights reserved.
  • Show Notes

    Topics: Ego, Hobbies, Home Automation, Guitar, Hardware, Internet ofThings, Social Interaction

    Companies:

    Keen Home Inc. Amano Magnetic

    Introduction

    In this episode we are joined by Vijay Parikh, Lead Engineer at smart homeautomation startup Keen Home Inc. Vijay shares his unique perspective on theburgeoning new market for smart home devices and other consumer hardware, aperspective based in part on a previous long stint in his career working onparking garage firmware. Yes, parking garages. You’ve almost certainly neverthought about it, but parking garages have kiosk computers tracking cars,payments, open parking spaces and more. Vijay breaks it down for us, andexplains why he came back to hardware because he believes the cloud iscommoditized and cloud plus custom hardware will drive the next wave ofinnovation. He also shares wisdom and amusing anecdotes from working abroad,playing guitar and building competitive pumpkin launchers (trebuchet).

    Guest Bio

    Vijay Parikh is Lead Engineer at Keen Home, Inc. He has previously heldpositions as Platform Director and Senior Software Engineer at Qualia Media,Software Engineer at Magnetic and Lead Software Engineer and Software Engineerat Amano.

    Vijay is an avid amateur tinkerer, guitarist, and photographer, and for manyyears has participated in trebuchet competitions.

    Links

    Commodore64 Apple II Arduino 3D Printing Home Automation Trebuchet Eddie Van Halen Andres Segovia

    Credits

    Host: Mark S. Weiss Intro and Outro Music: “Florida Song” Copyright 2016 by Photographs (Mark S. Weiss). All rights reserved. Ad Intro Music: “Woozy” Copyright 2015 by Photographs (Mark S. Weiss). All rights reserved. All Interview content Copyright 2018 by Using Reflection and Mark S. Weiss. All rights reserved.
  • Show Notes

    Topics: EdTech, Failure, FinTech, Founding, Game Development, Gaming,Learning, Play Testing, Social Apps, Startups

    Companies:

    Nvstr Amplify Electronic Arts

    Projects: TileWild

    Introduction

    In this episode we are joined by Hayden Cacace, Director of ProductEngineering at Nvstr, and former gaming startup co-founder. This is a reallyfun episode in which a unified theory of living, learning, understanding andgaming emerges from Hayden’s active mind and enthusiastic conversation. Haydentalks about software as a holistic understanding of human needs answered bytechnical creation. He emphasizes the importance of understanding systems forall of us in a world that is increasingly connected and growing in complexity.And he describes how gaming is a journey of commitment and mental disciplineinto a world combining art and an interactive system of rules, and therelationship of this journey to education and all learning. Where does gamingend and life begin?

    Guest Bio

    Hayden Cacace is the director of product engineering at Nvstr, an early-stagestartup where he designs and builds software to make intelligent, self-directed stock market investing accessible to everyone. Hayden has worked as amanager, product architect, game designer, engineer, tech lead and founder fora variety of companies, large and small, on a range of projects in educationtech, and console, PC and mobile games.

    Links

    Nvstr EA Amplify TileWild YouTube trailer

    Credits

    Host: Mark S. Weiss Intro and Outro Music: “Florida Song” Copyright 2016 by Photographs (Mark S. Weiss). All rights reserved. Ad Intro Music: “Woozy” Copyright 2015 by Photographs (Mark S. Weiss). All rights reserved. All Interview content Copyright 2018 by Using Reflection and Mark S. Weiss. All rights reserved.
  • Show Notes

    Topics: EdTech, Failure, Founding, Learning, Mechanical Engineering,Robotics, Startups

    Companies:

    Brooklyn Robot Foundry Wireless Generation

    Introduction

    In this episode we are joined by Jenny Young, Owner of Brooklyn Robot Foundry.Jenny’s story starts in her childhood garage in Ohio, building things with herdad and learning the joys of failing, solving problems and ultimatelysucceeding in making machines do things in the real world. And Jenny’s storycontinues in the present day with her running a successful business giving NewYork City kids that same garage experience – building robots, failing,learning, succeeding. Along the way Jenny got her pilot’s license, became amechanical engineer, ran one project and then another and then somehow foundherself in project management without feeling like it was a choice she hadever made. So she walked away from the office to return to the garage, thistime to host classes full of kids becoming “little inventors and creators.”

    Guest Bio

    Jenny Young is the owner of Brooklyn Robot Foundry, a place that empowers kidsthrough building. She has a degree in Mechanical Engineering from PurdueUniversity. She grew up working alongside her father in his garage shop anddoing arts and crafts projects with her mother. From an early age she wasexposed to the joys of building and designing things from found items. Priorto starting the Foundry, she worked in the educational technology and medicaldevice fields as a project manager and engineer.

    Show Notes

    02:52 - Brooklyn Robot Foundry 05:27 - Design Engineering 06:02 - “I’m going to go back to to doing something with my hands, and back to actually making things.” 06:07 - “That was really what made me start the business, that I really just missed engineering.” 06:57 - “In New York City there aren’t garages, there aren’t spaces and places to be able to break things and put them back together and to create.” 07:12 - “I wanted to be able to create that space, that suburban garage for city kids 
 so they could be not so much consumers of products but be more of users of products and creators of products and modifiers of products so that they can really understand how the world works and what’s inside these things that engineers make.” 07:56 - Mechanical Engineering 09:17 - Manufacturing Engineering 10:29 - Electrical Engineering 10:30 - “We’re kind of bridging the gap between mechanical, electrical and software engineering” 10:59 - “You make a snowman with a light-up nose. That’s the simplest project we do with a 2-year-old.” 11:32 - Arduino 12:25 - “We’re not just programming on the computer for a program that’s running within the computer, we’re programming the computer to run something that’s in the physical world.” 13:11 - “For me it was always really important for me to be using my hands and thinking about physics.” 13:25 - “It’s kind of like being a sculptor or like being an artist where you are working in the physical world but making sure things stay stay put, but maybe they’re going to be moving or maybe they’re going to be lighting up, and you can use a computer to control those things and do what you want.” 13:57 - “I feel like if you’re really good at software, and really good at building things in the physical world, man can you do some sweet stuff.” 15:08 - Sikorsky helicopter transmissions 16:57: On ending up in project management: “It felt kind of inevitable and totally out of my control.” 17:33 - Limor Fried 17:54 - Adafruit 18:08 - On returning to engineering: “It’s been really good for my brain, really good for my creativity 
” 19:02 - Remembering what if feels like to fail 19:17 Introversion 23:02 - The loneliness of being a founder 24:57 - Bootstrapped, took no funding 25:42 - “It’s this incredible creative experience where everybody makes these pretty junky robots that only sort of work” 25:57 - “If I had investors, they would say, ‘You already have 250 robots, you don’t need any more. Why don’t you start expanding the business.’
 But I don’t have to, because it’s mine and I think it’s really fun. And I also think it’s a differentiator to the parents.” 27:57 - “The mission of the business is to get kids back to taking things apart, understanding how things work, understanding that it’s OK to fail, and it’s actually really fun to fail.” 28:21 - “The goal is for them to feel empowered and to understand basic electronics and basic mechanisms and basic coding so that they can say, ‘Hey I’m good enough at doing this that I can create my own thing.’” 28:38 - Public school education emphasis on standardized testing and getting one right answer 30:54 - “And then maybe your last wrong answer is actually a better answer than what you thought.” 32:42 - IKEA 33:17 - Inventors class for advanced students where they design and build their own robots 33:55 - “We’ve just made a little inventor, a little creator, and that’s great.” 35:00 - “That upbringing shaped the way I look at physical mechanical things but it also just shaped the way I look at life. I’ve never been afraid to try something with the fear in my head, ‘Oh, you’re going to fail.’” 36:17 - Retaining girls as customers as they grow older. Letting children make robots with an appearance that appeals to them.

    Credits

    Host: Mark S. Weiss Intro and Outro Music: “Florida Song” Copyright 2016 by Photographs (Mark S. Weiss). All rights reserved. Ad Intro Music: “Woozy” Copyright 2015 by Photographs (Mark S. Weiss). All rights reserved. All Interview content Copyright 2018 by Using Reflection and Mark S. Weiss. All rights reserved.
  • Show Notes

    Topics: Data Visualization, Javascript, Machine Learning, Open Data, OpenSource, Software Engineering, Social Responsibility, Teamwork, Team Leadership

    Companies:

    Plotly Accompany.io

    Projects: PivotTableJS, React-PivotTableJs

    Introduction

    In this episode we are joined by Nicolas Kruchten, Head of Engineering atAccompany.io. Nicolas looks back on his 15 years of working with data toreflect on the social and human aspects of analytics, machine learning anddata visualization. He discusses the motivations and impact of some his manycivic data projects based on Montreal Open Data. We talk about visualizationas metaphor and “UI for your data,” and touch on Nicolas’ successful opensource project PivotTable.js, which brought this venerable analytical toolfrom the desktop to the browser. Nicolas also shares what he has learned abouteffective communication through his varied experience in roles as a civil andsoftware engineer, data scientist and head of product and head of engineering.

    Guest Bio

    Nicolas Kruchten Head of Engineering at Accompany.io, which builds data-driventools teams and companies use to improve their culture. Nicolas has previouslyheld positions as a Senior Software Engineer, Head of Data Science and Head ofProduct. He was Director of Technology for Engineers Without Borders Canadaand graduated from University of Toronto with a Bachelor’s of Sciencespecializing in Civil Engineering. He is the creator and maintainer of thePivotTable.js project. He has beenblogging since 2010 at nicolaskruchten.com,often presenting data analysis and visualization projects based on MontrealOpen Data data sets. You can follow him on Twitter@NicolasKruchten.

    Links

    3:13 - https://en.wikipedia.org/wiki/Philippe_Kruchten 7:30 - http://nicolas.kruchten.com/tags/Montreal/ 8:00 - http://nicolas.kruchten.com/mtlelection2013bysection/ 9:15 - http://nicolas.kruchten.com/content/2014/01/mtlelection-ternary/ 10:38 - https://www.wired.com/2010/11/ff_311_new_york/ 10:40 - http://nicolas.kruchten.com/content/2015/06/montreal-311/ 12:55 - http://nicolas.kruchten.com/mtl311/ 13:39 - https://medium.com/visualizing-the-field/why-people-leave-their-data-viz-jobs-be1a7ab5dddc 14:55 - http://www.datavis.ca/papers/hbook.pdf 15:55 - https://www.ft.com/content/21a6e7d8-b479-11e3-a09a-00144feabdc0 21:05 - https://medium.com/@dominikus/the-end-of-interactive-visualizations-52c585dcafcb 21:54 - https://pudding.cool/2017/05/song-repetition/ 22:13 - https://pivottable.js.org/ 23:30 - http://nicolas.kruchten.com/content/2016/02/html5mtl-pivottable/ 24:50 - https://react-pivottable.js.org/ 27:00 - https://www.aha.io/roadmapping/guide/product-management 28:10 - http://nicolas.kruchten.com/content/2017/09/feedback-log/ 36:30 - https://steveblank.com/?s=out+of+the+building 37:00 - http://nicolas.kruchten.com/content/2015/04/mtl_housenumbers/ 37:30 - http://nicolas.kruchten.com/content/2016/07/direction-angrignon/ 39:00 legal: http://oiq.qc.ca/Documents/DAJ/Lois/TheCodeofEthicsofEngineers.pdf moral: https://en.wikipedia.org/wiki/Ritual_of_the_Calling_of_an_Engineer

    Credits

    Host: Mark S. Weiss Intro and Outro Music: “Florida Song” Copyright 2016 by Photographs (Mark S. Weiss). All rights reserved. Ad Intro Music: “Woozy” Copyright 2015 by Photographs (Mark S. Weiss). All rights reserved. All Interview content Copyright 2018 by Using Reflection and Mark S. Weiss. All rights reserved.
  • Show Notes

    Topics: Computer Science, EdTech, Failure, Founding, Learning, ManagingEngineers, Mentoring, Recruiting, Security, Software Engineering, Startups,Teaching, Team Leadership, Teamwork, Trust

    Companies:

    Handy Amplify Wireless Generation

    Introduction

    In this episode we are joined by Kulesh Shanmugasundaram,VP of Engineering atHandy and Adjunct Professor of Computer Science at the NYU Tandon School ofEngineering. Kulesh describes an arc from award-winning Ph.D. securityresearch to founding a company based on that research, and on to technical andthen senior engineering leadership positions at Amplify Education and Handy.It has been a journey from computer science, a study of the domain of themachine, to software engineering, a “team sport” and social activity ofengineers working to understand and then solve human problems. Kulesh observedthis split from the start of his graduate research on the famed ILOVEYOU emailworm, an attack that was equal parts technical and social. And he has gainedwisdom about the social aspects of computing in each step of his career,learning to keep workplace teams aligned and close to stakeholders, andobserving what causes teams of talented students to turn on each other. Kuleshalso offers insights on the three types of software problems, how he uses his“bad memory” to good advantage, and the differences between teaching andmentoring.

    Guest Bio

    Kulesh Shanmugasundaram is VP of Engineering at Handy, a marketplace forhiring home services professionals. He is also an Adjunct Professor ofComputer Science at the NYU Tandon School of Engineering. He received hisPh.D. in Computer Science from Tandon in 2006, winning the Pearl BrownsteinDoctoral Research Award for best Ph.D. thesis and earning second place in theInternational ACM Graduate Student Research contest. Prior to working atHandy, he served as Senior Architect and then Director of Engineering atAmplify Education, an educational software company. Prior to that he co-founded two companies, network security vendor Vivic Networks and softwarelibrary vendor Digital Assembly.

    Links

    Handy Amplify NYU Tandon School of Engineering ForNet: A Distributed Forensics Network, K. Shanmugasundaram Ph.D. Thesis

    Credits

    Host: Mark S. Weiss Intro and Outro Music: “Florida Song” Copyright 2016 by Photographs (Mark S. Weiss). All rights reserved. Ad Intro Music: “Woozy” Copyright 2015 by Photographs (Mark S. Weiss). All rights reserved. All Interview content Copyright 2018 by Using Reflection and Mark S. Weiss. All rights reserved.
  • Show Notes

    Topics: COBOL, Continuous Delivery, DevOps, Mainframes, Mentoring, .NET,Software Engineering, Teamwork, Team Leaderhsip

    Companies:

    ThomsonReuters

    Introduction

    In this episode we are joined by Joe Cavanaugh, programmer analyst for ThomsonReuters. Joe describes a journey that started with working on mainframe COBOLprograms written the year he was born and evolved to leading dev ops effortsfor a company division. Along the way, Joe has helped start and grow amentoring program, gained insights about the connection between a team’smaturity and the maturity of its processes and product, and learned aboutcraftsmanship by comparing his woodworking skills to those of his grandfather.

    Guest Bio

    Joe Cavanaugh is a Software Engineer with Thomson Reuters, a company whichprovides the intelligence, technology and human expertise you need to findtrusted answers. He is leading the company’s efforts to provide a betterContinuous Integration and Continuous Delivery experience. Joe previously wasa COBOL programmer working on an IBM mainframe, a .NET engineer working inSilverlight and C# for 2 years, all at Thomson Reuters. He is also proud to tohave helped grow a company internship program from just a few students workingon the mainframe to more than a dozen students working on a variety ofprojects. In addition, he co-founded “Innovation Days” initiatives as well asconferences on campus. When not working he is chasing his daughter, playingvideo games, watching football, fishing, or just hanging out in ruralWisconsin with friends and family.

    Credits

    Host: Mark S. Weiss Intro and Outro Music: “Florida Song” Copyright 2016 by Photographs (Mark S. Weiss). All rights reserved. Ad Intro Music: “Woozy” Copyright 2015 by Photographs (Mark S. Weiss). All rights reserved. All Interview content Copyright 2018 by Using Reflection and Mark S. Weiss. All rights reserved.