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 is 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. Marcus Morrison is the CTO at Datebox. Datebox is a Rails-driven application. 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 a platform this large. My name is Jonathan Cottrell. You're listening to Developer Tea. My goal on this show is to help 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. Let's jump into the interview with Marcus Morrison. So I'm at SquaresConf, Squares Conference. I hate the short name of conference. Yeah. I'm with Marcus Morrison, who is the CTO of Datebox. Datebox. Somebody who's listening to this podcast is probably subscribed to Datebox, right? Can you tell for those developers who are not dating anyone? What Datebox is? 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 inconvenience 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. My wife would attest to it. Although, you know, I think to be fair. I think... Like a pretty good target audience for you guys is probably married people who have like stopped dating and haven't dated in a while, you know? Absolutely. And they're trying to come up with an idea or something like that. Yeah, we feel like the, you know, after about three years, you kind of have the same routine in and out. Netflix and chill. Yep. Yeah. And then, you know, 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 T was doing interviews at conferences. And but we were there. Yes. And apparently we talked and I gave you a notebook. 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? The same stickers from the sticker mule. And how many conferences? I feel like those things go at conferences. You know, I haven't. I haven't. Yeah. They typically do. But I haven't gone to a ton of conferences. OK. And this is the first conference where the stickers are actually in the swag bag. OK. So, yeah, it's they we still have quite a supply left over. Yeah. But hopefully we'll run out of them and they'll be on people's laptops all around the world. Oh, absolutely. The dream. Yeah, exactly. So actually, I'm going to flip 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 at the panel. And it's the one that that I think is perhaps most interesting about developers. I started asking some people. I'm going to pull this right up front because it ends up opening up a good conversation. But what 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, the at home life, but also the work life. I strongly believe that we should focus on relationships as coworkers, as employees, as team leaders. And actually, you know, focus on the relationship, focus on, you know, 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 let's talk about this. How do you 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. And I'm walking into work on a normal day. You know, what is 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 for me, I'm going to go and describe what that looks like. Ensuring that the first thing I do isn't sit down at my desk. Ensuring the first thing I do is saying 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. Yeah. You invite somebody to would you like a cup of coffee? Ensuring 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 we talk about quite a bit at Whiteboard, which is leading through some level of of servanthood. 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 to learn through servant leadership. Yeah. 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. Right. For you. Right. And you're this you are a CTO. You're allowed to say this. You have the chance now to to help elevate other people to a position where they can they can best, for example. Yeah. I know you. You your your company uses rails. You have the chance to provide a lit path for somebody to learn how to write, you know, a better rails oriented code. Absolutely. And that's that is a that's a huge opportunity as as a leader. But it's also a huge responsibility. Yes. And the flip side of servant leadership is, you know, leading through or trying to lead through some kind of strict policy or, you know. Yes. Because you walk in and you sit down at your computer first. Yes. And you're not making somebody else coffee. You're asking, why hasn't the coffee been made? Yeah. That'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 by doing that for people shows I am willing to step out and do that and set an example, you know, leading by example. Yeah. And other people will make the coffee. coffee. That's not, you're not accepting a life full of, uh, uh, of just, you know, laying down and, and only doing, uh, the, the, the work that nobody else wants to do. You also get the opportunity of having these really good relationships because it serves you as well. Absolutely. When you develop relationships, it's not, it's not, uh, I think a lot of people have this wrong. Um, developing relationships for the sake of your business is, uh, if you approach it from only that perspective, then the relationship itself is going to be, um, is cold, right? 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. Yeah. So let's talk about vulnerability. And so how would you, in this scenario where this, this associate developer is, you know, there's, there's a good way to show vulnerability, then there's, you know, there's always a line that you need to draw, right? So you wouldn't want to, uh, to bring them into your office and cry every morning, right? No, absolutely not. Probably not the right way. So what does that look like? Uh, I think that looks like, uh, start with transparency. Uh, 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 know everything, but that's not why I'm here. I'm here to ensure and equip the people that do know everything to do their job. Yeah. And I think that's a huge step in vulnerability. 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. No way. You, especially as a CTO, you know this because, uh, you have people that are developing their skills, uh, their technical skills and they're going to surpass you pretty quickly. And that's the goal. Yeah, exactly. And in a healthy company. Yes. It should be. Uh, so that's, that's really good. I, 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, of, uh, of a worker who comes into work and I say worker, a person. Yes. Who comes into work and, um, it's one of their favorite places to be. Yeah. Right. I, I, I heard this recently. Um, it 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. 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 and how'd you end up becoming CTO of date box? It's such an interesting position. Yeah. Yeah. Um, so I should start off. I think this goes back to when I first entered the field. Um, I entered the field as a designer. Okay. Um, I actually stepped out and, uh, got hired on at an agency to be a designer. Um, I thought that's what I was meant to do. I stepped out, I designed some sites, I had a great time. Um, and then I noticed that, you know, development necessarily wasn't going as fast as design. And I had the opportunity to step in, um, at this time we were a rail shop, um, and they were building custom rail sites. And so I said, this doesn't look so hard. Um, no background in development, uh, other than, you know, HTML and CSS, which let's be honest, it's a good step. Yeah. Yeah. Uh, and I just stepped out and I started it. Um, and you know, this was, this was back in rails too. It wasn't the, the best, the best environment to learn in, but sure. You know, it was, it was a great step. Um, 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, uh, 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 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, moved, 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 to 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. uh, uh, uh, uh, uh, 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 tool 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 software, you know that Fuse is a great app. But today's sponsor is Fuse. And it's an all-in-one system, Unity. Then this is kind of like Unity for web applications. And 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 have to go back to the Fuse app. So if you're using Fuse, you're going to end up with native iOS and Android applications. Go and check it out, spec.fm slash Fuse to learn more about what Fuse has to offer to Developer T listeners and mobile app developers. Thank you again to Fuse for sponsoring today's episode of Developer T 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, you know, job changes. How many jobs did you go through? I am at my fourth job. Okay. Yep. Yep. And the last one was the most interesting change. The best way I can say this is we got hired as like almost like a company that was the, you know, agency for Datebox. And, you know, 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 the relationships. And we're like, this is awesome. This is something we can get behind. Well, I stepped in, I built the 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. Yeah. And at that point I was asked to step onto the team into the role I am today. So it was a, 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? Yeah. Yeah. Yeah. Yeah. You know, can you tell how many users are currently? Yeah. So what I can, 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, that's great. So it's built on Rails. Yes, sir. And, you know, what, what other interesting technologies are you using with it? I think, you know, it falls in a pretty similar stack of Rails, you know, Sidekick, Redis. Sure. Wimcash, just the basic things. I think where they're interesting. is where it's going to be moving to up to this point. We have been a monthly subscription company, but we've built our user base. We've 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 Dbox. 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. It's, 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. Correctly. In more sophisticated ways. So I think that this is, you know, this is a recurring topic on Developer T now. It's becoming more and more recurrent. I spoke with Chris Albin. He has a PhD in, oh, geez, it's like, I think it's political economics or, anyway, it's not poli sci, but it's similar to political science. But he runs a podcast called Partially Derivative. Okay. And Partially Derivative is about machine learning entirely, or 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 edge of the cliff. 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. 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 they're open sourcing things. Yeah. 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 Datebox? 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 mean, at the core, I think we're just starting to see that we're getting a lot of people who are interested in, you know, you know, you know, you know, you know, you know, you know, you know, you know, at the core, our company is built around relationships, right, the quality of the product. Yeah, absolutely. And so if, 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. Mm-hmm, but then starting from there, moving into actually, you know, providing date night that you want to experience, not that we want you to experience, whether you want to experience, we want to send you on things that you may have never done, or things you may not realize you ever wanted to, but because of the data we're collecting and because of the feedback and because of other users who are similar to you, be able to provide that for you. Yeah, yeah. And for people who don't know, you know, how this would work, can you, I'd love for you to give kind of, because I've given my description of this, 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, we're expecting the sun in nine weeks, so we aren't going to go out, you know, 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. Things that we know about you that you have actually provided us, you know, 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, I say simple, but as relatively straightforward as that, without. Without going extremely crazy. I feel like when we talk about machine learning and people talk about machine learning, they always assume that it's complicated and they always assume that it's this far-fetched goal. Right. And I think you can start with basic tools. Like we talked about the open source stuff that Google was doing. Google actually has an API where you can send them text and get sentiment results. Not only that, but they'll return you back, you know, adjectives, nouns, places. And so if we're even talking about how to approach that, using their open source API, and on top of that, I believe they actually have a, as part of their services, you can subscribe and actually have them do this for you. Wow. Yeah. Very cool. So 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. Yes. So people that you know. And you have rated, let's say, a particular type of date. Yes. Four or five stars. Yeah. Something like that. And you determine, okay, here are the particular fields that we think are going to be predictive. Yes. Right. And then, go ahead. So example would be, do you like to go in-home? Mm-hmm. Or do you like to go out? Are you active? Right. Are you not active? 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. And so you have that data to tell you, here's a description of what someone who typically rates this thing four or five. Yes. What they are. So now you can say, okay, somebody coming in who hasn't experienced any of these. Yes. You can make a pretty, depending on how much data you have, pretty good prediction based on previous people. Yeah. Assuming that this concept of similarity holds true, right? Correct. That we have 10 things in common, we're likely to have an 11th thing in common. Correct. Right. And I think the more data you have, the better you can get at that, obviously. Sure. Yeah. And I mean, but at the core of it, you like this date, you rate it this date, similar to the person, this next person. You both want to stay in home. You both want something active, creative, and fun. Mm-hmm. 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? Yep. And this is where the learning comes in, right? And because we're retraining with user feedback. Yes. And so now our original data set that we said, okay, we know this is valid or we know this is invalid, 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. Because it's a process that we no longer have to add more of our energy to. Yes. Yes. And that's kind of the... The ultimate end goal of this is to create things that become better on their own. Yes. And with that, 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. You are... You're saying, yes and no, this does sound like a good idea. Mm-hmm. And so they're telling us... Right. You know, maybe we have this date that has this particular part. Mm-hmm. And this other date, you know, had a few good pieces. Why don't we combine those? Combine, yeah. Yeah. See which parts are good. Absolutely. Right. Yeah. You find all the highest rated portions. 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. Yep. You wouldn't combine two restaurants into one date. Correct. So, there's some interesting insight that you'd have to add to that process. Yeah. Yeah. Yeah. Yeah. Yeah. Yeah. Yeah. Yeah. Yeah. Yeah. Yeah. Yeah. Yeah. Yeah. And what we think is fun may not be what our customers think is fun. Exactly. Right. And so, we may combine two places that we think is okay, but, you know, at the reality of it is, our customers don't. Sure. 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... We can say, okay, I want to go to a water park and then a really nice dinner. Correct. That's going to be really hard... Yeah. ...for people in reality, right? Because... Oh, yeah. ...they're going to be, you know, coming off a water slide... Flip-flops and shorts. Exactly. So, now they have to go back home and shower and all this stuff. It doesn't work. No. It's 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. 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 reasoning level. Yes. A machine learning algorithm is only observing. Yes. Right? Yeah. It only knows at some level what we're telling it. Right. Exactly. So, it could be that some large number of people really do want to do that. And we were wrong. We were wrong with our intuition at that point, right? It's happened before. Right. Yeah, exactly. It happens all the time, actually. It's very interesting. Cool. So, we've asked this question, the, what do you wish more people would talk to you about? Relationships. 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 mental health. Yes. And about awareness. Awareness of mental health. And how do we take care to be sensitive to the people in our immediate community who have these kinds of issues. And 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 like an interesting juxtaposition because, you know, I do think that some of these things are able to increase our empathy. 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 just, you want to do good. Yeah. For your customers. It helps give a meaning to the job. Exactly. Yeah. And, you know, goodwill or whatever your reasoning is. Making other people happy. And increasing the quality of their relationships. Yep. Is a good thing, right? Positively. And if a computer can figure out how to do that better than you can, then isn't it worse for us to stand in the gap? Yeah. I think absolutely. Yeah. Yeah. I think 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. Exactly. It's a huge opportunity. Absolutely. So, that was, I thought that was particularly interesting that we uncovered that. We didn't really get a chance during the panel to uncover it. But the reality, you know, somebody asked the question of, you know, what is this going to do when we have, for example, machine learning driven design? And how can we, you know, build empathy into machine learning? And, you know, the snapshot moment that I mentioned during the panel was, yeah, we probably will see an impact on the job market for designers and also for developers. Yep. 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 a positive impact as well. Yeah. New positions are created. Mm-hmm. New markets are opened. Mm-hmm. 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 second question that I like to ask all the guests who come on the show. And that is, if you had 30 seconds to give advice to all developers, whatever background, you know, any experience level, what would you tell them? I would say it's okay to admit what you don't know. Right. And to lean on your teammates to help you get the knowledge you don't have. It's okay to show that vulnerability and admit you don't know something. But, you know, just have encouragement knowing that somebody around you will help you. Yeah. Yeah. It's a better situation to rely on other people than to be alone. Yeah. Right. Very good advice. Thank you so much for coming on the show. Yeah. Thank you for having me. Thank you for listening to today's episode of Developer Tea. And 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 is. Fuse has to offer to you as a developer. Spec.fm slash Fuse. Thank you again for listening. Make sure you subscribe in whatever podcasting app you use so you don't miss out on future episodes of Developer Tea. Thanks again. And until next time, enjoy your tea.