Developer Tea

Squares Conference (feat. Marcus Morrison)

Episode Summary

In today's episode, I talk with Marcus Morrison about his journey to becoming a CTO of a monthly subscription startup called Datebox. Today's episode is sponsored by Fuse! Build native iOS and Android apps with less code and better collaboration. Head over to spec.fm/fuse to learn more today!

Episode Notes

In today's episode, I talk with Marcus Morrison about his journey to becoming a CTO of a monthly subscription startup called Datebox.

Today's episode is sponsored by Fuse! Build native iOS and Android apps with less code and better collaboration. Head over to spec.fm/fuse to learn more today!

Episode Transcription

What does it like to lead a team that is distributing hundreds of thousands of subscription items per year? This is what we're going to be talking about. In today's episode of Developer Tea, it's an interview with Marcus Morrison is the CTO at Datebox. Datebox is a Rails-driven application and we talk about all different kinds of subjects related to becoming a CTO and ramping up into that job as a Rails developer and a leader of a tech team for platform this large. My name is Jonathan Cutrell, you're listening to Developer Tea. My goal on this show is to hope you become a better developer. We do this by unearthing information and creating these interviews with other tech leaders and tech thinkers in this industry, but also providing you inspiration and answering questions from you. Lots of different ways that we are trying to help you level up as a developer. Thank you so much for listening to today's episode of Developer Tea. While you're listening to the interview, you should be able to go into your application on your mobile phone or whatever you're using right now to listen to this podcast and subscribe to Developer Tea. This is the best way to make sure you don't miss out on future episodes of the show. Let's jump into the interview with Marcus Morrison. So I'm at Squares Conference. Squares Conference. I hate the short name of Conference. With Marcus Morrison, who is the CTO of Datebox. Probably subscribe to Datebox, right? Can you tell for those developers who are not dating anyone in the month, date boxes? Yeah, great question. So Datebox is a monthly subscription company. We aim to supply couples with a unique and fun date night each and every month. We try to take the hassle and convenience out of planning date night. I am a man. Therefore, date night doesn't come natural to me. So being able to have this planned out each month is very nice. Yeah, speak for yourself. I'm actually pretty good at date nights. You can have my wife would have tested. Although, I think to be fair, I think a pretty good target audience for you guys is probably married people who have stopped dating and have dated in a while. Absolutely. And they were trying to come up with an idea or something like that. Yeah, we feel like that, after about three years, you kind of have the same routine in a netflix and chill. Yep. And then you're coming home from work. We work together as well. So we have a lot of time together and actually making time for a date is a little bit of a difficult thing. Oh, absolutely. In any case, this isn't a dating podcast. This is a technology podcast. So it's funny. You actually mentioned we were on a panel together here at Squares. And you mentioned before the panel that you actually came up to me and had a conversation with me. I feel terrible because I totally forgot about this. No problem. But you came up to me, I was at RailsConf two years ago. And this is before Developer Tea was doing interviews at conferences. And but we were there. Yes. Apparently we talked and I gave you a notebook from whiteboard. Yeah. And probably a sticker. I believe so, yes. So now you have two stickers because you got one here too. Yeah. Yeah. I did one run of stickers, by the way. So do you still have the same stickers from the sticker mule? And how many conferences? I feel like those things go. I commented. I haven't, yeah. They typically do. But I haven't gone to a ton of conferences. So. And this is the first conference where the stickers are actually in the swag bags. Okay. So yeah, we still have quite a supply left over at home, but hopefully we'll run out of them and there'll be people's laptops all around the world. Absolutely. Absolutely. The dream. So actually I'm going to flip the questions. I do this every once in a while now. The two questions that I ask every developer that comes on the show. I'm going to flip them around because we actually had this question out the panel. And it's the one that I think is perhaps most interesting about developers. And I started asking some people this right up front because it ends up opening up a good conversation. But what is one thing that you wish more people would ask you about? Yeah, I think as a developer, I don't get to talk enough about relationships and how they affect not only, you know, that at home life, but also the work life. I strongly believe that we should focus on relationships as co-workers, as employees, as team leaders, as a employee of a team leader. And actually focus on their relationship, focus on showing vulnerability, focus on making the conversations not just about work, but about life, lifestyle, maintaining a healthy work life balance. Yeah. So let's talk about this. How would you go about? Let's say I'm in a pretty normal work environment, like an agency environment, which I am, but let's say I'm an associate developer. Okay. And I'm walking into work on a normal day. You know, what is a healthy relationship potentially look like versus a one that's what you're describing only talking about work? Yeah. So I think for me, I'm going to go ahead and describe what that looks like. Ensuring that the first thing I do isn't sit down with my desk. Ensuring the first thing I do is say hi to somebody, you know, encouraging or, you know, asking how somebody's weekend went if it was a Monday, making coffee and not only making coffee, making the point to invite somebody to, would you like a cup of coffee? And that we're, you know, communicating at a base level. It's interesting because what you're saying, at least what it sounds like to me is something that we talk about quite a bit at Whiteboard, which is leading through some level of, of servamhood, right? Yeah. Absolutely. You're serving the people around you, whether you're quite literally serving them coffee or you're just serving them by asking them about their, about their weekend. I think there's a lot to learn through servant leadership. Yeah. So, we are, we are leaders, but we're also people. Our job is to lift people up around us so they can do their job because at some point in leadership, you're no longer doing the job. Yeah. And you're depending on the others you're leading to do a job for you. Right. Right. And you're this, you are a CTO, you're allowed to say this. You have the chance now to help elevate other people to a position where they can, they can best, for example, I know you, you're, you're company uses rails. You have the chance to provide a lit path for somebody to learn how to write, you know, better rails oriented code. Absolutely. And that's, that is a, that's a huge opportunity as a leader, but it's also huge responsibility. Yes. And the flip side of, of servant leadership is, you know, leading through, or trying to lead through some kind of strict policy or, you know, demanding, that kind of thing, which is totally different, right? Because you walk in and you sit down at your computer first. Yes. And you're not making somebody else's coffee. You're asking why hasn't the coffee been made? Yeah. That's, there's a big difference. Yes. And very often, nobody wants to make the coffee at that point. Yeah. Right. And I think leading the way by doing that for people shows, I'm willing to start. Step out and do that and set an example, you know, lead by example. Yeah. And other people will make the coffee. That's not, you're not accepting a life full of, of just, you know, laying down and, and only doing the, the, the work that nobody else wants to do. You also get the opportunity of having these really good relationships. Yes. Because it serves you as well. Absolutely. When you develop relationships, it's not, it's not, I think a lot of people have this wrong. Keeping relationships for the sake of your business is, if you approach it from only that perspective, then the relationship itself is going to be, is cold, right? Yes. It's, it's not going to work because it's not genuine. People are, are really good at some things and really bad at others. One of the things that people are really good at is understanding whether somebody is being genuine or not. And I, and I think showing vulnerability is the first step to showing that you're genuine. Yeah. So let's talk about vulnerability. And so how would you, in this scenario where this, this associate developer is walking in, you know, there's, there's a good way to show vulnerability. Then there's, you know, there's always a line that you draw, right? So you wouldn't want to, to bring them into your office and cry every morning, right? Yes. No, absolutely not. Probably not the, the right way. So what does that look like? I think that looks like, just start with transparency. Mm-hmm. I think transparency can form the basis of vulnerability. Um, you know, if you're struggling, it's okay to be a leader and ask a question. It's okay to say, I trust you to make that decision. I don't know everything, but that's not why I'm here. I'm here to ensure and equip the people that do know everything, right? To do their job. Yeah. And then there's a huge step in vulnerability. Mm-hmm. Absolutely. And being okay with the fact that you're not, uh, you're not the ultimate expert. Absolutely. Right? This is, this is hugely important, especially for, uh, companies that have multiple experts in different areas. Because you're not going to be an expert in all of those areas. Now, why? You especially as a ZTO, you know this, because, uh, you have people who are developing their skills, uh, their technical skills, and they're going to surpass you, right? Uh, pretty quickly. Yeah, and that's the goal. Yeah, exactly. And, and, and healthy companies. Yes. Should be. Uh, so that's, that's really good. Uh, I love this idea that there's this, uh, this bad picture of the slaving away worker who eventually is going to quit. Yeah. And then the, the good picture of, uh, of a worker who comes into work and I say a worker, a person who comes into work and, um, it's one of their favorite, favorite places to be, right? Yeah. I, I, I heard this recently, um, I said, the war versus talent is over and talent has won. And I think what you're describing says exactly that. Yeah. If you're unhappy and you're not being engaged and you just come to work and you're in a show, you probably not going to be there long, mm-hmm. Yeah, I absolutely agree. I mean, which brings me to my next, uh, I guess question, a story from you, if you will. Um, what is your kind of your background? How do you end up becoming CTO of date boxes? Is it such an interesting position? Yeah. Um, so I should start off. I think this goes back to when I first entered the field. Yeah. I entered the field as a designer. Okay. I actually stepped out and got hired on at an agency to be a designer. Um, I thought that's what I was meant to do. I stepped out and designed some sites. I had a great time. Um, and then I noticed that, you know, development necessarily wasn't going as fast as designed. And I had the opportunity to step in. Mm-hmm. I'm at this time. We were real shop. Um, and they were building custom mill sites. And so I said, this doesn't look so hard. Um, no background in development. Other than, you know, HTML and CSS, which, let's be honest, it's a good step. Yeah. Yeah. And I just stepped out and I started it. Um, and, you know, this was, this was back in Rails 2. It wasn't the best, the best environment to learn in. Sure. You know, it was, it was a great step. Mm-hmm. I think through that, I, I, I noticed I really loved it. That was something that I may not have been traditionally, you know, trained in, but it was something I had a passion for. Right. Yeah. And thankfully, the Rails community is amazing at, you know, providing great resources. Supporting people. Supporting people. I mean, you're, you have absolutely no worry reaching out and saying, here's what I'm trying to do and get a ton of responses. And so I think from there, I just started, I fell in love with, you know, fell in love with Ruby at that point and realized, you know, wow, this is, this is something that's fun. Yeah. And I think my perspective of coming from design and having that approach has helped me realize that you can bridge that gap and that gap is a necessity of bridge because being able to help communicate development to design back and forth, I think has really helped me get to the position I'm in. Yeah. Yeah. If you're an application developer, specifically if you're an iOS developer or an Android developer, I want you to take a second and evaluate the last time that you decided to change your tool set. You probably haven't ever changed your tool set if you're one or the other of these kinds of mobile app developers. And usually the reason that mobile app developers are not changing their tool sets is because they don't even know that there are multiple tools sets. In fact, most of the time app development really hasn't changed very much for even decades. It's been a long time since we've seen a major shift in application development software, but today's sponsor is changing that for mobile app developers. Today's sponsor is Fuse. Fuse is an application that you can install on your Mac or on your Mac OS machine or your Windows machine. And it is an all-in-one application that allows you to build applications using less code. If you've ever worked with the game development system Unity, then this is kind of like Unity for web applications. If you haven't used Unity, I encourage you to go look at Unity to kind of make a comparison and see how this works. But really, this is going to allow you to use less code to accomplish more. This allows you to focus on the application a little bit more than on the boilerplate stuff that you're going to write over and over and over again in the other application development environments. Of course, at the end of your application development process with Fuse, you're going to end up with native iOS and Android applications. Don't check it out, spec.fm slash Fuse, to learn more about what Fuse has to offer to developer to listeners and mobile app developers. Thank you again to Fuse for sponsoring today's episode of Developer Tea and for changing app development software for everyone. So you started out in this crossover and then from there, it was just kind of a typical job change. How many jobs did you go through? I am at my fourth job. Okay. Yep. And the last one was the most interesting change. The best way I can say this is we got hired as almost like a company that was the agency for date box and they came to us with this idea and they said, you know, we really want to focus on couples and engaging them and helping them build their relationships. And we're like, this is awesome. This is something we can get behind. Well, I stepped in and I built a technology there and then, you know, it started taking off. And then I was like, you guys need to hire some developers. This thing can't be supported by an outside agency. And at that point, I was asked to step onto the team and to the role I'm today. So it was a very humble transition. Yeah. And how many developers are working on it now? Right now we have three. Wow. Yeah. And how many, you know, can you tell how many users are currently? Yeah. So what I can tell you is over the last 12 months, we shipped around 110,000 dates. Wow. Yeah. That's fantastic. Yeah. That's great. So it's built on rails and you know, what are their interesting technologies are using with it? I think, you know, it falls to the pretty similar stack of rails. You know, sidekick, reddisk, Mkash, just the basic things. I think where they're interesting is where it's going to be moving to up to this point. You know, we have been a monthly subscription company, but we've built our user base. We built the product and now it's time to really, really grow it from there. Yeah. Yeah. So one of the things we ended up talking about on the panel and hopefully this is in the, well, almost certainly is in the future for absolutely. Absolutely. Yeah. If you have anything to do with it, I'm sure it will, but is the role of some kind of learning, machine learning, artificial intelligence. You know, we use these words interchangeably, they aren't really interchangeable, but for the sake of the conversation, really, we're just talking about assisted data intelligence. Absolutely. Learning from our customers. Exactly. And learning in more intelligent ways and more sophisticated ways. So I think that this is, you know, this is a recurring topic on Developer Tea now. It's becoming more and more recurrent. I spoke with Chris Alpen. He has a PhD in, oh, Jesus, like, political, I think it's political economics or, anyway, it's not polyside, but it's similar to political science. And but he runs a podcast called partially derivative. Okay. And partially derivative is about a machine learning entirely, data science and a lot of it ends up being about machine learning. And we talked about the fact that we're kind of on this, we're right on the cusp of a huge growth spurt in these arenas, right? The ability to do all kinds of predictive things with machine learning is around the corner. Yeah. How far around the corner we're not really sure, but we're right on that edge and very large companies are investing in this, very large. Google, we discussed on the panel that their opening open sourcing things, you know, at pretty much name a big tech company and they're getting involved in machine learning. So what do you see being kind of the route, both at a very practical level for date box? I'd love to know some of your ideas that you've had. Yeah. I mean, if we're just starting with the most basic level, getting like sentiment analysis of how customers respond to our dates, are we actually satisfying that need of engaging couples? Because I'm at the core company is built around relationships. Right. The quality of the product. Yeah, absolutely. And so if we're sending you a content booklet and that isn't helping you engage, we want to strategically know and be able to adapt and predict the content because at the end of the day, that's what matters. But then starting from there moving into actually providing date night that you want experience, not that we want you to experience, whether you want a experience. We want to send you on things that you may have never done or things you may not realize you ever wanted to do, but because of the date we're collecting it, because of the feedback and because of other users who are somewhere to you, you'll be able to provide that for you. Yeah. And for people who don't know how this would work, I'd love for you to give kind of a I've given my description, but I'd love to hear your description of kind of how a basic machine learning algorithm would determine, okay, you know, my wife and I were expecting the sun in nine weeks. So we are going to go out and stay out super late. We would prefer to have a date at home. So what is a basic explanation of how a machine learning would determine that kind of thing? Yeah, I think at the base level, I think text mining, you know, on feedback you give us and then associating that text mining with things that we know about you that you have actually provided us explicitly. And so knowing that, you know, how long you've been married, knowing, you know, how long the average span of couples before they have a baby after marriage, and then just using that public data that, you know, people have already done studies on and actually just applying that to you from a text mining standpoint. And I think it can be as relatively as a simple, but as relatively straightforward as that without going extremely crazy. I feel like when we talk about machine learning, people talk about machine learning, they always assume that it's complicated and they always assume that it's, it's this far fetched goal. Right. Yeah. And I think you can start with basic tools like we talked about the open source that Google was doing. Yeah. Google actually has an API where you can send them text and get sentiment results, not only that, but they will return you back, you know, adjectives, nouns, places. Yeah. And so if we're even talking about how to approach that and using it, they're open source API. And on top of that, I believe they actually have a, as part of their, like services you can subscribe and actually have them do this for you. Wow. Yeah. Very cool. Basically, we're saying, you know, you collect information, data, and for a typical machine learning algorithm, you'd have some data that you know about. Right. So people that you know have rated, let's say a particular type of date, four or five stars, like that. And you determine, okay, here are the particular fields that we think are going to be predictive on this. And then go ahead. So example would be, do you like to go in home or do you like to go out? Are you active? Are you not active? Right. So those would be some examples of some things we know about you. Sure. Okay. So there you go. So you have a couple of things that are, that for sure, you've identified classifications of users, right? And so you have that data to tell you, here's a description of what someone who typically rates this thing, four or five, what they are. So now you can say, okay, somebody coming in who hasn't experienced any of these, you can make it pretty, depending on how much data you have, pretty good prediction based on previous people, assuming that this concept of similarity holds true, right? That we have 10 things in common, we're likely to have an 11th thing in common. And I think the more data you have, the better you can get at that obviously. And, I mean, but at the core of it, you like this state, you're at the state similar to the person, this next person, you both want to stay in home, you both want something active, creative and fun. We can take that and start to kind of get a better idea about you. Yeah. Yeah. And then get feedback obviously on, rate that on a scale of one to five. Right. How fun was it? How creative was it? Yeah. And this is where the learning comes back, right? And because we're training, retraining with user feedback. Yes. So now our original data set that we said, okay, we know this is valid or we know this is a valid, we start adding new data to that. Correct. And it becomes smarter and smarter over time, the more data it has. Yes. Which is pretty incredible. Yeah. And because it's a process that we no longer have to add more of our energy to. Yes. And that's kind of the ultimate angle of this is to create things that become better on their own. Yes. And we go to the idea of predicting what our customers want to do with enough data and enough learning. And then actually, you know, at some point, a human level of creating this idea becomes almost machine level. Machine level. Yeah. You are saying yes and no, this does sound like a good idea. And so they're telling us, right. You know, maybe maybe we have this date that has this particular part. And this other date, you know, had a few good pieces. Why not we combine them? Combine, yeah. See which parts are good. Absolutely. Right. Yeah. You find all the highest rated portions. Yeah. There's some really interesting stuff to talk about with psychology there. Yep. You know, is it, so for example, a date that has a really high rated restaurant and another date that has a really high rated restaurant, you wouldn't combine two restaurants in one day. Right. So there's some interesting insight that you'd have to add to that process. And what we think is fun may not be what our customers think is fun. Exactly. We may combine two places that we think is okay, but you know, at the reality of it is our customers don't. So we want to adapt to their needs, not our needs. Right. And we as humans, so this is such an interesting discussion because the whole point of machine learning is to make, to try to uncover realities that a machine can't know. They can't know context. So you and I, we can say, okay, I want to go to a water park and then a really nice dinner. That's going to be really hard for people in reality, right? Because they're going to be, you know, coming off a water slide and flip flops and shorts. Exactly. So now they have to go back home and shower and all this stuff. It doesn't work. No, incompatible. Not fun. And a computer wouldn't be able to know why it's incompatible, right? Correct. It would only be able to know that people rated it low. Yes. And this is where people get confused between artificial intelligence and machine learning. Yes. Artificial intelligence would have the ability, presumably, to create that context. Yes. And understand, you know, the incompatibility from a, from a reasoning level. Yes. A machine learning algorithm is only, is only observing. Yes. Right. Yeah. It only knows at some level what we're telling it. Right. Exactly. And so it could be that some large number of people really do want to do that. Yeah. And we were wrong with our intuition at that point, right? It happened before. Right. Yeah, exactly. It happens a whole time, actually. It's very interesting. Cool. So, so we've asked this question, the, the, what do you wish more people would talk to you about relationships? Yeah. And this is so interesting. And during the panel, I thought this was particularly interesting. You and I were the ones that talked the most about machine learning. And then we had this kind of stark contrast questions about, um, about mental health. Yes. And about awareness of mental health. And how do we take care to, to be sensitive to the people in our immediate community who have these kinds of issues? And, uh, it was very interesting because we had that question. And then we had the question about, how do I get started in machine learning? Yes. Back to back. And it felt, um, like an interesting juxtaposition because, um, you know, I do think that some of these, some of these things are able to increase our empathy for, for people. Right? Absolutely. It sounds cold because it's new. But for example, you do care deeply that your customers receive something they like. Absolutely. Both for business reasons, but also because you, you just, you want to do good for your customers, right? Helps give a meaning to the job. Exactly. Yeah. And, uh, you know, goodwill or whatever your reasoning is, um, making other people happy and increasing the quality of their relationships is a, is a good thing, right? Possibly. And if a computer can figure out how to do that better than you can, then, uh, isn't it worse for us to stand in the gap? Yeah. I think absolutely. Yeah. Yeah. I think, uh, we all have our strengths and weaknesses. And if we can bring something that can recognize a weakness we have and fill it in a positive way, why not? Sure. Yeah. And it's a huge opportunity. Absolutely. Uh, so that was, I thought that was particularly interesting that we uncovered that, or we didn't really get to get a chance during the panel to uncover it. Uh, but, but the, the reality, you know, I want to, somebody asked the question of, you know, what is this going to do when, when we have, for example, um, machine learning driven design? And how can we, you know, build empathy into machine learning and, you know, the, the snapshot moment that I mentioned during the panel was, yeah, we probably will see an, an impact on the job market for designers and also for developers. Yep. And we probably will see that. But we'll also see the flip side of it too, the positive job impact, right? The job may change, but we're going to see positive impact as well. Yeah. New positions are created. Mm-hmm. New markets are opened. Mm-hmm. Uh, and then quite frankly, something that may not have enough engineers in that field will start to increase and grow. Yeah. Absolutely. Well, this has been fantastic. I'm going to ask you the, the second question that I like to ask all the guests who come on the show. Uh, and that is, if you had 30 seconds to give advice to all developers, whatever background, and, you know, any experience level, uh, what would you tell? I would say it's okay to admit what you don't know and to lean on your, your teammates to help you get the knowledge you don't have. It's okay to, to show that vulnerability and to admit you don't know something, but, you know, just, uh, have encouragement knowing that somebody around you, it will help you. Yeah. Yeah. It's a better situation to rely on other people. Absolutely. To be alone. Yeah. Right. Very good advice. Thank you so much for coming on this show. Yeah. Thank you for having me. And today's episode of Developer Tea and thank you, thank you to Marcus for joining me at Squares Conference for a quick interview. I really appreciate it, Marcus. And thank you to Marcus also for providing my wife and I with a gift of date boxes. I really appreciate that. We haven't gotten them in the mail yet, but I certainly will let you know Marcus when we do. Thank you so much for listening to today's episode. And thank you to today's sponsor for helping make today's episode possible fuse. If you are a mobile app developer and you haven't asked yourself about your tool set recently, then I encourage you to go and check out what fuse has to offer to you as a developer. Spectatifim slash fuse. Thank you again for listening. Make sure you subscribe and whatever podcasting app you use so you don't miss out on future episodes of Developer Tea. Thanks again. Until next time, enjoy your tea.