Logo

Software Developers Journey Podcast

#114 Jamon Holmgren made his own independent way

Transcript

⚠ The following transcript was automatically generated.
❤ Help us out, Submit a pull-request to correct potential mistakes

Jamon Holmgren 0:00
You kind of touched on one of my blind spots, weak spots. Because I did so much coding by myself, it was probably over a decade where I never coded with anybody else. it was just me coding by myself making games. At one point I actually did get hired to work on some software for some small businesses owned by people that my dad knew. So I would work on Visual Basic for Applications VBA on Excel or Access and stuff like that. But even then, it was just me, you know, there was a client, but it was just me working on it. So because of that I have had to really work hard to learn how to work effectively with others how to value, even if it sounds weird, but even how to value other people's expertise and stuff like that. I've had to learn because I was always the one who, who figured everything out. I had to.

Tim Bourguignon 0:54
Hello, and welcome to developer's journey, the podcast bringing you the making up stories of successful software developers to help you on your upcoming journey. My name is Tim Bourguignon, and today, I received Jamon Holmgren. Jamon describes himself as a software developer, a business owner, a husband and a father of four. Jamon, welcome to DevJourney. So Jamon, the show exists to help the listeners understand what your story looked like and imagine how to shape their own future. So let's go back to your beginnings. Where would you place the start of your dev journey?

Jamon Holmgren 1:41
I would, I would probably say that my journey started in elementary school. I was probably, I would say in fifth grade or so. And we had a pretty good computer lab for the time. I'm 38 right now. And so this was back in the 80s. And we had a computer lab and I remember sitting down at a Commodore 64. And there were, there were a few things we could do with it, you know, like plug in a disc, and then and then run it. But I saw the blinking prompt and wondered, like, what would happen if I just, you know, typed in, you know, like, like some commands there. And they didn't, they didn't work. But for, for reasons that I can't seem to remember, I somehow must have gotten some of the commands like print, and I and I tried typing them in. And I must have had a bug because it didn't work. And so I kind of just stopped at that point, like, Okay, well, I don't really know what this is doing so, but that curiosity like what would this do what what happens if I type in my own thing here? Kind of continued. And then the following year, I was 12. And in sixth grade, I moved on to middle school. And there was a math teacher and She knew that I was interested in computers just kind of fascinated by them, she could tell. And one time after class, she said, Jim, and here's a, here's a book, you can take this home and kind of look at it, I want you to kind of understand what programming is all about. And it was a book on basic, the basic programming language. And so I read the book, we didn't have any computer that had basic on it at the time. But it gave me a chance to kind of just read it and be like, Okay, I understand print, you know, will print out on the screen, not like in a printer, it'll print out on the screen. And I could, I could also use the word input, an input would take some, some keyboard like input, and I could make something from that. And so that was kind of a, an introduction to what programming was all about. But it didn't really start in earnest until my dad who owned a business. He had an excavation company and he He was talking to his accountant and accountant said you know what this like, like doing your books on paper thing is not working out very well for you. How about you go out and get a computer This is gonna is going to help you quite a bit. And so he bought a 286 computer. And again, this computer didn't have basic on it but it had batch files, the computer store where we bought it from had batch files, you remember batch files temp.

Tim Bourguignon 4:29
I'm not sure, the windows batch files?

Jamon Holmgren 4:33
Well, this was pre windows. So this was pre windows, I was back in the MS DOS days and a batch file was basically just sort of a script. And you could just type in the commands and I kind of figured out okay, well, the commands that I would normally write at the DOS prompt. Which for those of you who are listening, who didn't use DOS, it was basically like the whole computer was just a terminal. commands I was writing there, I could write the same thing in a batch file. And then when I ran the batch file, it would run all those commands in sequence. So instead of saying like cd space games, and then starting my favorite game, I could just put in a batch file and name it one dot bat. And then if I type one, enter, it would run and like start my favorite game. So this was like the first kind of programming ish thing that I did. Just a script, basically. And then my dad realized that the 286 was not cutting it. He really needed a better computer. And his accountant, you know, told him what type of computer you really needed. So he bought a 4486 computer, so it was more advanced. And this one came with q basic, and that's where I really kind of started playing around with it and starting to get better at coding it. Probably age 13 or 14. Hmm,

Tim Bourguignon 5:54
interesting. So first, yeah, the DOS prompts Yeah, that I realized that When Well, you were telling me that you know, Windows has dos in its belly. And so yeah, I see what you mean, I still write some awesome batch files or actually pour PowerShell files. Yeah. Yeah. Which is exactly the the step cousin of touchpad probing. And then I would like to come back to one thing. I am always amazed how such a story always unfolds, because there's one person at some point who just nudges you in one direction. And that seems to be this math teacher of yours, giving you this on this basic book actually, recognizing something in you and say, if I nudge you right now, maybe something will happen.

Jamon Holmgren 6:44
Totally and I wish I could even remember her name to be honest I'm maybe I should get in touch with my some of my teachers or administrators from back then and ask who it was. Because I'd like to thank her cuz you know, she's she definitely definitely saw that in me. It led to a lifelong fascination with coding, which probably had already been stirred prior to that, but it gave me It gave me more of a pathway like, Okay, this is, this is, you know, I can head this direction and I'll learn more about making what what makes these computers tick and how you can control them.

Tim Bourguignon 7:21
I totally see that though. I had a similar experience. It was a bit later, I was only 14/15. And it was I really wanted to drop out of school and everything. And that was very pissed off at mathematics. I just couldn't understand why. And this teacher I'm thinking about, she realized that was really true into computers. And she kind of explained me why math is so important to computers and to programming and to using those computers not just in a gamey way but just making stuff. And I I think this was a turning point for my my life. Otherwise, I'm not sure where we would have ended. So yeah, yeah, some person who saw something and just nudges you in some direction. It's amazing.

Jamon Holmgren 8:08
Well, I can tell kind of a story about that. That sort of concept. I'm jumping ahead just a little bit in my, in my journey here, but so I made many, many games when I was when I had that qbasic machine. I made tons and tons of little games, because it was like, I couldn't just run down, we lived rurally we didn't have the internet. And this was like the late 90s when I was or mid to late 90s. And I would just be like, okay, I want a new game. So I'm just going to make it and I dream up these games while I was, you know, riding my bike or something, and then I would come back and I would try to make them. So let's say that I like wanted to make a space game and I wanted these rocket ships to fly around and I wanted these computer players to shoot at me, you know, and I choose back and we like have this you know, space battle. But one of the things that that requires is an understanding of basically true trigonometry, you have to know the angles like, what, what angle should this look like, if you have a computer player, you can just hook up like left and right. And then when they hit shoot, then you shoot in that direction. But like, how would you know what direction an AI player like a computer player should aim to shoot it the player there. There weren't any built in, like functions in queue basic, there wasn't a Stack Overflow. There wasn't I didn't even have the internet. I had no way to like figure out how to calculate this angle. So like, the first thing that I figured out was like, Well, if it's down into the left, and you can you know that because like the x value is less, you know, and the y value is more. Okay, that's down into the left, okay, I'll shoot that direction, but that's just not very accurate. That's just wildly shooting, you know? And so I came up with a really kind of bizarre workaround where there were these, these drawing tools built into qbasic that allowed you to move a like, like given an angle and a distance and it would, it would like, draw a line, but you could draw an invisible line. So I would do that and then it would tell me where the point ended up at the end. So, I would just kind of like have it almost like a radar like like trying to find the, the other spaceship using this, this thing that was not meant for this at all. And if it got close enough, then it would be like okay, that's the angle I need to turn to. And then it'll shoot. It was very slow, very clunky, but I actually made some games that worked okay and looked pretty reasonable. Then, like after, after I graduated from high school, I did go to college for one semester. I don't Have a degree, but I did go to the local community college for one semester, it was kind of figuring out what I wanted to do. And the first one of the first I was, I was pretty good at math. And so I ended up in a trigonometry class, right off the bat. And he, the teacher introduced, you know, the, sort of the sine, cosine, tangent and the just different ways to to, to calculate angles. And I'm like, Oh, this is what I've been missing. Like, this is the, these are the equations that I've needed. And I remember going home and implementing them into one of the games that I had done this other way. And it was so much faster and so much more accurate. And it was like, okay, that math concept clicked with me, because I had a real world application that needed it. And it was useful to me like from day one, and I aced that class. It was super easy because then it was like, Okay, this is what I needed.

Tim Bourguignon 11:52
Is it something that your brain needs a real life application to be able to grasp?

Jamon Holmgren 12:03
I would say yeah, definitely more in the interested side of it. I'm pretty good at learning things. But if I but I'm also very good at getting bored at things. And so I'm like, Well, if this doesn't have an application to me, then I'm really not interested in learning too much about it. But if I can see how this, you know, has a, this applies to something I need to do, then I like I just like really dive into it. That's, that's definitely a part of how I learned. And that's why when I do tutorials, I don't do like, hey, let's build yet another to do app or, you know, hey, let's, you know, whatever. Like I do things like, recently, I did an online Twitter thread, class, just kind of teaching other people how to do the a star pathfinding algorithm. And it's like, it's a fun one. To me. It's, you know, like learning algorithms can be kind of dry and boring, but this one It's fun because you get to make basically I made a hamster be able to, like find its way through a maze. And that to me feels like something you accomplished something and really embedded, like the the concepts of the A* pathfinding algorithm in my in my brain

Tim Bourguignon 13:18
when did you realize that and how did you go about and and start hacking your brain and in finding such such applications in order to learn ?

Jamon Holmgren 13:30
a really good question I guess because I always learned that direction with starting with the Q basic stuff. I would basically be like, okay, I want to make a game that you are, I don't know like your, your little character and you're going through an adventure and I need to be able to jump between screens. You know, if you forgot one screen, you're going to go to the next screen and it's your you're like wandering through This world kind of a early RPG style game. Well, I don't I don't know how to like redraw the entire screen when you go to a new screen and I'm gonna have to learn how to do that. How do I you know, I'm getting I'm getting some flicker, you know, when when this stuff happens, like how do I fix that problem. And so as always jumping from one small problem to the next small problem, and pretty soon you have a pretty complex thing. That's kind of just how my mind works. And so I you know, I started with things like a Madlib, Madlib is basically where you have a sentence and then you ask the user for a noun or a person or a place or something like that. And then at the end, you put all their answers into plug it their answers into a premade sentence. And it's kind of funny because, you know, out of context, they give you these these these words and things that don't really make sense. Or they're funny, and so I needed to know like, how do you how do you take input and how You input it into the string. So these are always like, it's just just kind of always how I've worked. I don't know if I really realized that as a concept until much later.

Tim Bourguignon 15:08
And but now you were able to, to flip it around and decide on something you want to learn and find corresponding project for it.

Jamon Holmgren 15:17
Yeah, I would say so. There's, there are definitely been there have definitely been situations where I've wanted to learn a technology and then I find a way to do that. Going back to the a star mechanism. That's been actually one of my Go Go to things. So I wanted to learn Elm, for example. But the last thing I wanted to do was just some tutorial. So I said, Okay, well, I'm going to make a pathfinding algorithm. I'm going to I'm going to make pathfinding and amazing stuff in Elm, the language and, and I did that I made it so that a fairly, you know, fairly advanced concept, pathfinding algorithm in A language I'd never done before. And that taught me a ton because every time that I would need to do something, I'd have to figure out like, Okay, how does this data get to this function? And how does this how do I represent this and their type system and things like that?

Tim Bourguignon 16:14
Did you confront your ideas with some Elm senior with big air quotes, Elm coders to see how they would do this. If, if your Elm is smelling like I don't know Python, or if there's another way a better way to do it.

Jamon Holmgren 16:45
No, I did not. And you kind of touched on probably one of my sort of blind spots, weak spots, because I did so much coding by myself between the ages of 12 and I would say 21 Maybe 22 maybe even maybe even longer than that. It was probably over a decade where I never coded with anybody else. Like it was just me coding by myself making games making it at one point I actually did get hired to work on some software for some small businesses owned by companies that I like owned by people that my my dad knew. So I would work on Visual Basic for Applications VBA on Excel or, or access and stuff like that. But even then, it was just me, you know, there was there was a client, but it was just me working on it. So because of that I have had to really work hard to learn how to work effectively with others how to even like value, even if it sounds weird, but even how to value other people's expertise and stuff like that I've had to learn because I was always the one who, who figured everything out. I had to

Tim Bourguignon 18:00
That's That's very interesting. How did you go about, I wouldn't say forcing yourself, but it probably has a bit of such a flair, forcing yourself to work with others. Why did you do it? And how did you go about it?

Jamon Holmgren 18:17
Well, I think that leads into another part of my my journey, which is when I started my business because I think that's really when that happened. I you know, I could be an individual developer for a while, but then only takes you so far. So when I started hiring people, I really had to I had to learn that and I don't know if you want to, like talk about how that all came about now or like, cool, all right. Yeah. So So after high school, I went to college for a little bit and then I, my my family I was 1819 years old and my family moved to Vancouver, Washington, which is basically a it's a it's not Vancouver, BC it's it's a town right near Portland, Oregon in the Pacific Northwest. And so I moved with them I was still living at home at the time. And because the the small town that I grew up in really didn't have much for much opportunity for me. And when I when we got there, I, there was a lot of opportunity at that time 2000 and 2001 I think were the years there was there's a lot of opportunity in construction, which my dad had a construction company so it you know, we just knew a lot of people. And so I went to work, doing kind of manual labor for a while and then moved into an office for a home building company. Incidentally, they, that's the same company that built my home that I'm in right now. Still have a great relationship with them. And I did things like marketing, I did CAD design, so you know, designing Holmes, which I actually did for several years, 3d design, stuff like that kind of got away from my programming roots for a while. And it didn't really occur to me that I could make a living, you know, full time doing coding, it just didn't occur to me at that time. But after a while, I really started wanting to own my own business, my dad was an entrepreneur, it was just kind of in my blood to, you know, do my own thing. And I'm kind of an independent guy. I don't have any problem tackling problems myself. And so, so in 2005, that was, you know, a few years later, I decided I was going to go on my own and start building websites. And also I was still doing home design for a while for probably another two, three years, I did home design for remodels and stuff like that. So that was it was sort of just a gradual change. From Home design and web development into finally eventually into full full web development

Tim Bourguignon 21:08
Did you learn web development on the side and just on were you interested in it or how do you did that come to be?

Jamon Holmgren 21:16
So my church was looking to build a website and I think about 2004 they wanted to build a website and I was the most kind of computer savvy person at the church so they said, Hey, you know, you're interested. And I said, Well, yeah, I would love to I you know, I've done coding for years. So it shouldn't be that hard. Right. But I said you have to buy me a copy of Dreamweaver. Dreamweaver home, yes. Dreamweaver MX 2004. So, so they did I think it was about $350 or 300 bucks or something. And that was basically my compensation for the for the website was to just buy me the software and So I then went and bought a PHP book, and a JavaScript book. And I actually looked. So I've told this story before several times. And it's kind of embarrassing because I've always said that I stopped at Barnes and Noble to buy those books. But it's not true. I went looked at my Amazon history, and I bought it off of Amazon was my first purchase. So embarrassing that I don't know if it's my first I think it was my first purchase way back then. Maybe I don't know. Anyway. I always thought I bought it at Barnes and Noble. I have this this memory that I stopped at Barnes and Noble, but it's not true. So if you've listened to my other podcasts, the truth comes out. Unfortunately, I bought it off Amazon.

Tim Bourguignon 22:47
Well, you can flip it on its head and say you were a pioneer. It was pretty new and it was cool.

Jamon Holmgren 22:56
And it was cool, totally. So Although I am I'm actually curious whether I bought both books, I might have just bought the JavaScript one there. And anyway, regardless of the timeline, I had a PHP book that also had my sequel in it. And then I also had a book on JavaScript. And these are two brand new languages for me, I'd never done them before the only languages I had ever done. There was Basic & VBA. I've done a little bit of c++. And I've done a little bit of Java. I mean, just tiny bits of c++. And Java, mostly basics. And so when I done some C as well. But yeah, so I dove into this and HTML CSS, not really big deal. I'd actually I guess, done a little bit of HTML, CSS before. Well, not so much CSS, let's just say HTML. And so I built this website and actually laid it out using tables. This was the easiest way Yeah, is the easiest way to do it. We finally come full circle. We have grids now. But it was like it was like the simplest way to build a website back then. And I built a website for them. And so that's how I kind of learned. And then people from the church saw that I had built this website, they were using it. And they said, Hey, if you're interested in having, you know, building a website for my little business, I need a website too. And so I'd build a website for you know, 800 bucks or something. And then I kind of moved up from there and started building things that were more and more complex.

Tim Bourguignon 24:24
So now we have reached the end of our tangent. We started with you saying that you were not used to working with somebody else. Right now you have created this company, and it's growing and you're building more and more websites. And now you need to hire someone...

Jamon Holmgren 24:44
Yeah, totally. And this was a big scary step. Because not only did I have to hire someone, but I also figured, well, I need an office at some point here because I was working out of my spare bedroom. So, I first hired a young young man who was kind of right out of high school. He had learned some he had had a little bit of schooling in PHP, I guess, he had done a little bit of PHP and HTML stuff. But he didn't know a lot. And so I thought, Okay, well, I can teach him how to do this. Just how, you know, just like I taught myself. And he has a little bit of background and I can have him do sort of the basic stuff, and then I'll do the more complex stuff. We started off working remotely, although at the time, I didn't know what that meant. You know, that wasn't really a thing. But I would we would communicate via email and I would send him things didn't work super Well, to be honest. And eventually I was like, You know what, I need an office and so I rented an office from my former employer, the homebuilder yet they had a spare office available. So I signed a lease with them moved in there and and then had the young guy come in and and work with me there. And for a little while I didn't have work for him. So I kind of let him go and then then it started taking off again. And so I brought him back on he still works for me today actually, about well over probably 11 years later. Wow.

Tim Bourguignon 26:28
That that speaks to your relationship.

Jamon Holmgren 26:31
Yeah, it's been it's been interesting. He's grown a lot. He's now a senior level developer. He does high level applications for Microsoft and, and, you know, big companies like that through my company, and I'm really proud of his growth. He's done Fantastic, Fantastic work. But I going back to what you're saying, Tim, I had to kind of learn how to work with other people. Now. It was people more junior than me and Technically, I was kind of a junior, you know, even though I'd been coding for a long time, just for myself, I really hadn't done much for, for anybody else, like in terms of professional, professional knowledge. I mean, I really I started 2004 and so just a few years into it to, you know, 2009 I was like, you know, still not not real. I wasn't really far along in my journey.

Tim Bourguignon 27:27
Um, did you did you find somebody to guide you there? Or was it really just you, books and maybe the internet at that time?

Jamon Holmgren 27:35
Yeah, I mean, I did read a lot. I learned a lot from the people at base camp. You know, I read some books by them. But a lot of it was just me kind of muddling through. And this is, again, goes back to one of my character traits, which can be a positive and a negative where I'll just figure it out, you know, but then maybe I don't, I don't. I don't seek to learn from other people as quickly as I really should. And that didn't really change until much later on. So I was hiring people. I had, I had a number of employees then at that point and I was training them all, like each time I would train each, each developer that would come on board, I'd train them. And then I made a hire, I hired a designer, actually a creative director, someone who had been in the business for a long time, they had owned their own business. He was, you know, five years older than me. And I hired him for a lot more money than I would have, you know, normally put toward an employee at that time. And he taught me a ton about managing, you know, employees at a at a much higher level. His name is Mike was Zack and he's a really fantastic designer, really fantastic manager. I was really lucky to have him on board as as almost like hiring a mentor. That point.

Tim Bourguignon 28:57
That's interesting. It's your first time I heard somebody say "I hired my mentor".

Jamon Holmgren 29:03
It didn't, I didn't intend it to be that way. But I can I can say that that definitely happened. There was a lot of mentorship that happen there.

Tim Bourguignon 29:10
Do you think he would describe it this way as well?

Jamon Holmgren 29:13
You know, that's a good question. I think he would agree that there was a lot that, that he was a lot of value he was able to bring to the business in that in that sense. He's a very humble guy, though. So I don't know if he would characterize it that way. I definitely look at him as being a big influence on on my career, that that made a big difference. And what was cool about it was I had all these kind of ideas and was maybe a little cocky, you know, like, Hey, I built this business by myself, you know, from nothing and whatever. And he's like, Okay, let's try something a little different way. And when we would do it, it would work and it would, I would get better results. And I'm like, okay, maybe I don't know everything. And it's, it's actually had a pretty big impact on me to this day. The other the other sort of mentorship that I've gotten has been my business partner. Todd worth he came into the picture much later, but that we've been working together for about five years now.

Tim Bourguignon 30:05
Do you have a tendency to hire all your mentors?

Jamon Holmgren 30:11
Yeah, I recommend it. It works really well.

Tim Bourguignon 30:15
It seems to. So, tell me the end of the story. I think that this was your first company and then you created a second company afterward. So can you explain the end of the first company and the transition to the second one?

Jamon Holmgren 30:32
Yes. So into in 2014. I was doing pretty well. I had. I mean, it was it was a struggle through. I don't know 2011, 2012 were pretty tough. 2013 was tough as well, but I was starting to kind of figure a few things out 2014 was a good year, and then right at the end of 2014. I had a huge setback. Got a really big client that dropped out at a really inopportune time. And it made it so that I was like, basically going without a salary for several months. I was trying to I was like, like actually paying money back into the company to try to keep it afloat. And I'm like, Man, I'm, I'm 10 years into this business. I told my wife, like, if something does not change in 2015, like I'm done this way too much stress, to be paying money to have a business, you know. And luckily, though, there were some big changes that happened in 2012. Actually, I'll bring it all the way back to 2010 2010. I started started doing more Ruby on Rails rather than PHP. And I started learning you know more about that. I also started doing more open source in 2011 and 2012. And open source opened a ton of doors, because I was able to connect with some people and then I created My own open source in Ruby. I also started doing some some mobile apps. And so that opened some doors as well. And I, I got a chance to, to give a talk at a conference in San Francisco. And you got to realize that like, I'm, you know, I grew up in a town of 1700 people in rural, coastal Oregon, like, there was nobody around, it was 30 minutes, the nearest reasonable town, which was like 40,000 people, and then, you know, over like an hour to Portland, which is the biggest city near us. So I was a very rural kind of just, you know, backwoods type of guy. So getting invited to San Francisco to give a talk was a pretty big deal for me in 2014. And I went there and I gave a talk and it was super well received, like went super well. And I also met a couple guys there. who became my my business partners later with but We basically were able to keep a conversation going, you know, in chat slack had just come out. So we were on slack. And we were talking on slack all the time. And so in 2015, when, when I had kind of made that, that pronouncement to my wife, like, I can't do this another year, if it doesn't work out, I was much more open to two opportunities. And that's when Todd one of the guys I had met there who had given a talk as well. He owned a company called infinite read, and it was a competitor company to me in some ways. And but we were talking and he just kind of half jokingly floated the idea of Hey, what what if we merged our two companies, because there were some things about his company that he had some some areas that were sort of like weak spots, and I had weak spots that were different. And it just made sense. Like, maybe if we combined efforts, we could cover both of those weak spots.

Tim Bourguignon 34:00
That makes sense. That makes sense. The first question would be toward the talk you gave in San-Francisco. That was one of your first talks. Why did you decide to to give a talk at that point?

Jamon Holmgren 34:12
I had never been to a tech conference before. I was the first talk on the first day, having never been to a tech conference before. And this just kind of speaks to my sort of like, I guess I'll just jump in headfirst and see what happens. type of attitude. I've always kind of been that way and it mostly has worked out. But, uh, ya know, I, I had watched talks on YouTube before I I read some there's a there's a website. I don't know it's maybe a little dated by now, but it it it's speaking.io I still think it has great advice. I don't Remember when that came out, but that might have been a part of it as well. I read that. And it gave me a lot of good ideas. But like I just kind of went for it. Luckily, I was talking about my, my library. And it was a topic I knew super well. I also had a chance to give a talk at a Portland meetup about the library. So PBX Ruby is a big Ruby meetup. And I didn't realize how big it was because I'd never been to it. And I went there. And I was one of the talks that you know, I had signed up to give a talk. And when I got there, I'm like, Whoa, there's a lot of people here. There were probably 100 and maybe 150 people there at a meetup. Yeah, and so it's almost like a mini conference. And I had assumed I would have maybe a little less of a shock, you know, coming in and a lot of people but that talk went well as well. And so that gave me a little bit of Confidence moving into the conference.

Tim Bourguignon 36:02
Okay, gotcha. Um, the other question I wanted to ask is going into your the merger you did. So you told us at the beginning, you were a lone wolf in coding, and you had to kind of force yourself to accept coding with somebody else. And then you spent 10 years, having your own company and probably calling all the shots. Yeah. And now you merged your company. So how did that go?

Jamon Holmgren 36:34
Well, I would say, Yeah, that's a great question. Well, I would say that my experience with Mike, as my creative director helped prepare me a little bit because we he was so senior and had such great ideas that I'm more or less started almost almost acting like he was a quasi partner in some ways, like I would run a lot of things by him. So it gave me a little bit of initial ideas in 2014 whatever it was that we work together about how we might do this. Now he left. He kind of like he, we felt a great relationship and stuff. But he wanted to go back to his previous job. He basically had built us up to a certain point he was ready to move on. And right after that was when I started talking to, you know, talking to to Todd about merging. And he told me, Mike told me Yeah, this sounds like a good opportunity. So that gave me a little bit of, you know, a boost like this could be this can be something good. I will give a lot of credit, though, to Todd, as well as Ken, who was the Todd's business partner at the time, we ended up working together for a few years. And then Ken left the company. I also met a guy named Dan Laborde who, at the conference, he also gave a talk. So it was a very influential conference to us. But then now he's he's our third business partner. So Danton I run the company now. And Ken is sort of a alumni he, he, we still stay in touch with him. But yeah, it was it was definitely still a learning curve. And I'll give a lot of credit to Todd, who was like I said, He's more is more of a mentor to me. And so being able to work with someone like Todd has been fantastic. It's been it's been a learning experience has been something that I didn't always adapt to super well. But, but working with great people has made all the difference in the world.

Tim Bourguignon 38:35
And even in your DNA now to work with people, you still catch yourself at some point, wanting to do things on your own.

Jamon Holmgren 38:42
I'd be lying if I didn't, didn't say it sometimes came across like Oh, man, you know, I wish I could just make this decision. But the benefits are so, so big, like being able to, you know, pull together on this, you know, very, I would say very hard Problem of running a business and having different people involved. It can be a problem. But it can also be just a huge opportunity because you're just not you're not shouldering the load yourself. And that loneliness feeling of like this is all on me to fix is something I'm just not willing to go back to. And that was that feeling that I had in the beginning of 2015 when I said I can't do this anymore, and that something has to change. That opened me up to the idea of I have to rely on other people. And I've, I've honestly felt like it's been, it's been amazing. And there have been a lot of situations where in the past, I probably would have made the wrong decision, but having them to bounce ideas off of and get get some good advice or just just someone like not in the situation who can just look at it more objectively just makes such a difference.

Tim Bourguignon 39:52
Yeah, it kind of sounds like how like being in a relationship, you solve problems in a different way that you might not have had in the first place if you were alone, but, but you can reach new heights, because you're two or even three now.

Jamon Holmgren 40:07
That's so true. Yeah, that's so true. That's very much like being in a in a relationship.

Tim Bourguignon 40:14
Um, one more question for you. You've spoken a lot about business. How do you keep your coding chops up to date? You still code, don't you? Or do you still spend some time committing code for the company?

Jamon Holmgren 40:30
Yeah, that's a great question. So I coded up until the merger. And then after the merger, we were you know, we had double the size so we went from 12 people I think I had at the time to 25 or so. And so yeah, like, he was too big to to be involved in coding every day. But I still had to open source I still had stuff that I was doing to support art. developers would jump in and help them with things. But my first it was actually kind of a big like shock to the system because I, my first role was actually Chief Operating Officer. I went from being everything to being just folks on the operation side. And so I went away from the tech for a while GAMP was not an owner yet. So he was our top technical person, he was very good. So I was able to lean on him. And then we also had a few other principal level level principal level developers who could help out a lot with all the technical stuff. So I used to be sort of the the firemen I would come in and you know, like all fix this, you know, but we had people who could do that then and so other than open source my my coding skills, kind of atrophied a little bit for a while. And then it like, about two years ago, I think, let me think Yeah, two years ago, I switched back into the CTO role. So then now my, my job is a lot more technical than it used to be. I don't commit code on projects. Well, I did recently on a project, but it's very rare. For the most part, I'm still in a support role. But I stay sharp just by timing, I love code coding, right? So I stay sharp by by doing open source and stuff like that. I will say, though, that I am in a little different period of life with my with my kids growing up to where I just don't spend the off hours coding like I used to.

Tim Bourguignon 42:38
And how would you describe your role right now your CTO role, what do you do as a CTO?

Jamon Holmgren 42:44
A big part of my, well, there's the CTO role, but then I'm also kind of business development and so the CTO side is supporting about, I don't know 12 to 16 developers depending on are committed projects and freelance and stuff. And so I meet with them, I see how things are going and I see how I can unblock them. I try to work on things like improving their skills and putting in place, you know, just ways that they can improve as developers. I'm often still a troubleshooter, which is I love that I'm actually good at it. It's debugging is something I'm very good at. So someone comes to me, I've been, you know, finding this issue for a long time. Okay, let me see if I can fix in five minutes. Just maybe a little bit of hubris there but it happens more often than not that i can i can get to the bottom of it. And that's, that's cool. But the other part of the business development part takes up a ton of my time. So I'm meeting with potential clients, I'm talking to them about their projects I'm selling the project I work with a few other people on that are our head of design, who came with me from my previous you know, team that we when we merged, I work with my Berner Todd and we also bring in Gant and a few others as needed to do the sales but it's it's kind of mostly my responsibility to make sure that the technical sales are continued which technical sales is almost all of our sales?

Tim Bourguignon 44:16
As it often is in such small companies?

Jamon Holmgren 44:19
yeah.

Tim Bourguignon 44:21
Okay, um, we've kind of reached the part of the interview where I would like to have an advice from you. And since we've talked about building your business, I think I'm going to go in this direction. So if you had an advice for someone who is considering, maybe not dropping out of school, but right out of high school, creating their own business in coding or going on and not necessarily right out of high school, but creating their own business, what would be the advice that you would like to give them?

Jamon Holmgren 44:50
Yeah, that's that's a great question. I, I think that I did a lot of things wrong in the very beginning. Now, I will point out 2005 is very different than 2020 in terms of just where technology is 15 years makes a big difference for sure. But, but I will say that the the number one thing that you can do is to connect with other other other people really, in the tech industry. Networking, it's it's ridiculously important in my opinion, if I were to start over, I would be putting a significant amount of my effort into that. It still continues to be something that pays off today. All the connections that I made in this is something I love connecting with people I like like talking to people. I like hanging out with people and kind of an extrovert. And so even if you're not an extrovert, like finding ways to connect with other companies, like for example, Slack, shared channels are one of the most powerful tools you have for your business. You just need to, you know, chat with people reach out to people say, Hey, I own a small business. I'm starting a small business. I have Have, I'm focusing on these things, don't just jump in like trying to sell them do not do that. That's just not a good way to do it. These are partnership calls. These are things where you're trying to build a relationship, you want to get to know who they are, you know what, what makes them tick, maybe listen to a podcast interview that they've done. Obviously, you know, you'd want to listen to a dev journey, you'd want to listen to all these great podcasts and just kind of get an idea of who they are. And then connect with them. And just periodically reach out, see how they're doing, see what challenges they have, maybe do a zoom call, the, to me that networking, that getting to know people building your circle, having resources to kind of fall back on. And not just treating it as a sales channel, but as a way to learn makes all the difference in the world. Like I did not spend nearly enough time building up resources, people that I could ask questions for and I had to learn the hard way almost everything would not I would not recommend that. Definitely try to try to do that and I will extend an invitation to anybody listening to this podcast to connect with me, I'm always happy to chat even if you're just starting your business,

Tim Bourguignon 47:09
Where would be the best place to reach out to you for people wanting to take you up on the offer?

Jamon Holmgren 47:15
Almost always Twitter. So my first and last name @jamonhomegren is the Twitter handle, you can find me there. And my DMS are open. So you can just send me a DM and hopefully I'll see it. And then we also have a slack community slack like a free slack that you can join at community dot infinite dot read. And you can reach out to me there as well. But I'll probably answer more quickly on Twitter than I would on the slack side of things. Just hit me up, tell me what you're all about what you're doing. And I'm happy to chat with you.

Tim Bourguignon 47:48
Awesome, awesome. Anything you want to plug in. Anything timely coming up another conference talk maybe?

Jamon Holmgren 47:56
You know, I don't have any, we've cancelled everything for obvious reasons in 2020, we even canceled our our own conference, our React Native conference, but you can check that out. It's called chain react comf. Chain react conf is our conference that is supposed to happen in 2021. Hopefully it does. And if it does, then love to see people there. It's a fantastic conference in Portland in July when it's beautiful, beautiful weather. And then you can listen to my podcast. We're continuing, we're continuing to work on season two. It's at building.infinite.red. So we talk all about how we built InfiniteRed what our story is, you can listen to season one, which was Todd can enemy. And then season two is Todd Gant and me which were kind of you know, this is the next iteration of InfiniteRed and how we're talking about how we how we're building that.

Tim Bourguignon 48:54
Awesome. Jamon, thank you very much.

Jamon Holmgren 48:57
Yeah, it's been awesome to chat. With you, Tim. And I'll be listening to to all of your all of your episodes going forward. I love this sort of thing. Hi, thank you!

Tim Bourguignon 49:12
And this has been another episode of DevJourney, and we'll see each other next week. Bye. This is Tim from a different time and space with a few comments to make. First, get the most of those developers journeys by subscribing to the podcast with the app of your choice, and get the new episodes out to magically right when they air. The podcast is available on all major platforms. Then, visit our website to find the show notes with the old links mentioned by our guests, the advices they gave us, their book references and so on. And while you're there, use the comments to continue the discussion with our guests and with me or reach out on Twitter or LinkedIn. And a big big thanks to the Patreon donors that helps me pay the hosting bills. If you can spare a few coins, please consider a small monthly donation. Every pledge, however small helps. Finally, please do someone you love a favor, tell them about the show today and help them on their journey.