Mike Akins made the move from flying helicopters in the military to tech -- an AWESOME career switcher story! He has attended Oregon State and walks us through the challenges of searching for jobs as a student, from internships to applying for those first jobs.
We discuss imposter syndrome and working alongside a different generation of developers -- overall, a very enlightening discussion!
Thanks very much for your time, Mike!
View Transcript
All right, how was this one for a career switch story? This guy went from flying helicopters to becoming a software developer. So, my guest Mike Akens shares his story from making that switch from the army, flying helicopters, teaching flight school, and then going into programming. I think this is a super cool career switch story. I really appreciate him sharing his perspectives on becoming a software developer, going back to school to learn about software development, and how this was a very unique and fortunate opportunity for him to be able to pursue. So, I think that you're really going to enjoy this one. So, please sit back, enjoy, and I'll see you next time. >> Okay. Mike, do you want to kick us off and give us a little bit of background for how you got started, and you can go back as early as you want
or kind of start from? >> Sure. So, um I was going to Oregon State University in 2001 and joined the Army out of there and spent 14 years on active duty after a little stint in the National Guard. I was an officer and a helicopter pilot and I did that. I got out of the army in 2018 and taught flight school for the army for about three years down in Alabama, but didn't really like it down there and also didn't really particularly enjoy teaching flight school. So, we were just kind of looking for what else I could do and brainstorming and and just got the idea to go back to school, move back up to Corvalis, Oregon, go to Oregon State University and study computer science. >> So, I've been doing that and spent the last two years working >> at the uh center for
applied systems and software at Oregon State, which gives us a chance to gives students a chance to work on real world projects um on a part-time basis. You can do full-time when school's not in session and everything. It's just been a great opportunity and having a lot of fun. >> That's awesome. So, you're telling me that flying helicopters wasn't the coolest thing ever and you wanted to do something else? >> Well, I did enjoy it. I enjoyed it a lot when I was in the army. Uh that that part was great. Um I was getting to the point in the army where reaching a seniority level where flying wasn't going to be the primary thing. >> I see. >> And uh and then teaching flight school on the other side of that wasn't my favorite. There were a lot of opportunities for the airlines and
things like that, but that didn't really appeal to me. And the other part of it was just a lot of time away from home. >> So, >> okay, that's a I can definitely see that being a huge factor that's not so great. Helicopters, cool. Time away from like everyone you know and love, maybe not as cool. So, >> right. >> Um, cool. Okay. So, um, what I I don't know if there's like a particular moment in time or anything, but when it came time for like the software side of things, like what what was that that kind of like clicked for you? >> You know, I I was actually thinking about that leading up to this, and I'm not sure what led me to it, but some somewhere along the way, I got in my head to purchase this set of tutorials, and I don't
know that the company really does it anymore. They're called Learn Enough. And and their philosophy was you first start on the command line. And so you would do just getting around your computer on the command line and then some basic scripting at the end and then a text editor and then git and then you would start doing HTML and CSS and and as I got into working through that progression, I just it just clicked with me and I really really enjoyed it. And so when it when I was kind of thinking about what I could do outside of flying helicopters, computer science just jumped right out to me because I think I attribute it all to to just that set of tutorials. It's really interesting. >> That's awesome. Yeah, because I know like uh when I've talked to a few different people for like career
switching, sometimes it's like come up at work where they're like, "Oh, I'm doing something at work and someone I don't know whether it was like setting up email campaigns or had to touch the website or had to go do something." They're like was kind of became the person who had to do that and then over time like, you know, oh wait, I could do more with this. So I find like that's a pretty common pattern. Um, so super cool to hear that you got exposed through like you know like a learning opportunity like tutorials or you know course whatever it happens to be and then and then actually that like really convinced you like this is pretty cool stuff. So >> that's awesome. >> Cool. Um okay so switching careers is a pretty like scary thing. Um, >> yeah. >> Now, I know and you
kind of just walked through it a little bit, but was that something like for that experience for you? Did it did it seem like an obvious thing that had to happen or was it like, you know, the decision-m process, was it like were you on the fence a lot with it or were you like, "No, this is something that, you know, I really need to go do this and I'm driven to go make that change." >> Yeah. Um I I think what a lot of it was was was wanting a change and and trying to figure out what that change would be. uh the the job that I had contracting teaching flight school is a lot of people love it and it's great and the hours can be amazing and the pay is very good but it was it was just a little too repetitive
for me and I felt like I was too young and and I still had kind of too much more to give to kind of start going in this in this kind of repetitive cycle of of teaching and it wasn't my favorite thing to do. Um so we started looking at things. Um, now none of this would be possible if I have some continuing income from my time in the military and >> uh if it wasn't for that I just this wouldn't be happening like because that's what's facilitating this whole thing. So I've got that. I've also got the GI bill which is paying for school. And so I mean if it weren't for those things we wouldn't be doing this right now. But the um because because we had those there was an opportunity on the table. um you know we made some good decisions
earlier on financially so this was something that I could do and was interested in doing and and wanted to do it. I like I say though if just practically speaking that greased the skids and kind of made this possible and opened up the possibility and and then that became really compelling because I had the ability. >> Right. And that's a really good point to call out actually because you know for anyone who listening and watching it's like everyone's going to have different opportunities, different you know courses of life that they're on and stuff. So um good point that in your particular case you you had I want to I don't know like luxury I feel like is the wrong word but >> I think I I would call it that. >> Okay. Yeah. So you had like at least the luxury like let's say on
the financial side to be able to say I want to be able to do this and I have the means to do it whereas maybe some other individuals it's like they're kind of contemplating I think I want to I think I need a change but like how can I make this happen right? >> Sure it would have to be it would have had to have been a much more deliberate thought process going into it. Um and especially now I mean the world's completely different now in terms of being a junior software engineer than it was even when I started. Um, so I mean that's a big consideration. So it's it's certainly you know something that that took a lot of planning and again in my ability I do have the luxury of of of having some resources to make it happen. >> Right. Yeah. And
I guess on that note like what from your perspective and I this is going to be a loaded question with probably many different angles to cover but um in terms of how things have changed for juniors like what what are things that you observe and like I said there's probably a whole lot to cover but I don't know if you have like >> yeah like top of mind on that. >> Sure. It's nerve-wracking um to be graduating into this market right now. And while I do have some resources they're not limited. I, you know, I do need a job. I do need to be making some income. Um, and it is a little bit nerve-wracking. Now, I think, uh, what I've seen in terms, so I've had this part-time job now for two years, and so there's other students that are in different stages of
their, uh, completing their degree. What has, um, everybody who's gotten a job out of there has gotten it from internships or family connections. Um so the internships have been what I have seen at from my point of view has been successful in in getting people out there. Um so if if you can get those that's a huge leg up for for anybody that can that can land those. >> Um outside of that it just it seems very competitive. you hear the stories of people putting in three to 500 applications to get two interviews and >> um so you know you've got to find a way to stand out and then you've got to find a way to just kill it if you ever do get in front of uh somebody for an interview. Um so I think there's a lot going on from that perspective
and I think the other thing along with that is the the people I work with at any rate are don't seem very picky about about what's out there. they they recognize the reality and and they want to get out there and they have aspirations, but they also realize they're also realistic in in knowing that, you know, to start out here, the most important thing is is get out there and get into something. >> Yeah. And that's a like a bunch of really interesting points there, right? Especially that last part on on getting started. Like don't get me wrong, I think people should absolutely have goals in mind. You should have things that you want to, you know, strive for and achieve. And I think like I encourage people to do that. Um but yeah, I think the most important part is being able to get
the job in the f like get your foot in the door, start working. Um and I say that because I think one of the biggest challenges I see and when talking with people or hearing their challenges is >> is like well getting that first job. It's like I don't have the experience. I can't like I'm competing against against everyone else without the without experience too. and like we're all at the same spot and there's so many of us. So how do we like once you're in now you're at least accumulating what you can call like you know real world experience but it's also to your other point about internships I don't know if people talk about this enough I I have a like my experience I was very fortunate because I went to a university in Canada that was the the program was a co-op
program you had no choice but to be in internships >> okay >> it was based on that entirely I had six internships in five years. So like most of not most of my time like almost half my time in school was in internships but >> I I honestly can't imagine not doing that. >> This was many moons ago like over 10 years ago now. And uh I I still feel like without that even at that time I don't think I would have felt comfortable. Um, like it's it's a weird thing. Like I was in school and uh you know they kind of force you into interviews like in your like second week. They're like you're going on an internship four months from now so you have to start interviewing now. >> Um >> and that was awkward. It was awkward every single time. And it
was awkward when I graduated to interview and I can't imagine like you know having zero experience even going through the interview process or putting your resume in front of people. So for folks that are listening and watching like if you have internship opportunities I you know very much encourage you to to try and find those. >> Definitely. I I'm unfortunately not able to uh so my um I I'm a dad and so I can't really relocate for the summer to go do an internship. So, I I work at uh at my job. And I honestly, it was interesting what you said, though, because I I was thinking the same thing when I first got this job, working part-time, actually building things. It it dawned on me that I would be have been promptly fired from my first job if I had not done something like
this because >> it was it it was so I mean, when I first started the degree program, you know, I thought, you know, well, I'll learn how to build software, but that's not what a computer science degree is about. It's it's about exposing you to this myriad of topics and and you can dive into some of them and yes you do build some software but it's not about working on real world projects. That's not what a CS degree is for. Um and I didn't know that starting out. Um and then when I did get this job and and started actually building I mean it was it exposed me to things that I didn't know about that I I wasn't aware of entire practices for for working as a team and they do try to teach you these things. there's only so much they can do
in a in a in a small term as far as teaching you how to work as a part of a team as far as I mean just simple things like managing having a git branching strategy that's something that we covered in one class of my entire major um but you have to do every single day >> every day >> and it's it's really interesting and that and and just the opportunity to work so we primarily we we do all kinds of things but we primarily work in C# and at for any backend stuff that we do at work and it's um we you don't cover um in in any of the classes that I've taken at any rate we don't cover object-oriented programming to the degree that you would need to know to be a C# developer. Um so you know you first show up
and and people are talking to you about a repository pattern and dependency injection and things and you've never heard of these things before. Um, so it's the the I've learned at least as much at work as I have my entire degree program. Um, so it it's been an invaluable opportunity. I unfortunately don't get the connections that you would get in an internship where you go to maybe a couple one or two different companies over the course of the summer, but the experience >> I honestly can't imagine doing without it. I I really I would be starting off my career on such a bad foot if all I had was uh personal projects. So, absolutely. I know not everybody can get an internship or not everybody can get a job, but if you can really like put as much effort as you possibly can into getting
one of those opportunities because it's like I say, I I really cannot imagine what what it would be like if if I just entered the workforce and all I had done was build a to-do app and gotten my degree. >> Yeah, I think um your your sort of uh experience with the computer science degree. So I went for computer engineering and um it was I'll I'll put it this way in computer engineering we were in like under like applied science technically. So at the University of Wateroo there's like an engineering department. Computer science seems very similar to computer engineering. Computer science was in the math faculty. >> Oh okay. math. Like that's how just for like for people to understand like when we're saying computer science it's like it was literally under math >> and I don't like math. I can't imagine if I was
going to school and it was like hey everything you're doing is going to be math. There was a ton of math in my degree and it sucked. I used to be like good at it in high school and then I woke up in university and it was the worst. And it's there's so many other topics that are covered that aren't just the stuff that you really need for when you're working. Like I had I had a bunch of physics. I had a bunch of chemistry. I had a bunch of math. The when I was finally doing computer related things, it was almost like the theory behind like why they had some of you know early processor designs and stuff like that. it. I remember each term being like, why am I doing this? And then I would go on an internship and I'm like, this
is why I'm doing this, okay? And then back to school and I'm like, why am I doing more calculus? Like, I'm I can't imagine doing this at work. And then would go to work and I'm feeling better about it. So, it was just this constant cycle of like everything I'm doing in school, it really doesn't feel like it's the stuff that I'm like seeing at work. So, I'm like, "Okay, if I finish this and I get my degree, at least I know that the work that I should be doing like is what I like to do because if it looked like school >> wouldn't be for me, >> right? Yeah, that's fair. >> Yeah. And I had Oh, sorry. Go ahead. >> Oh, no. That's sorry. Go ahead. I was I had another uh question that I wanted to ask you about the about schooling
um and like sort of that experience of like going through and maybe it was really just like on the balance of like topics. Did you find that, so you mentioned that not all of it was necessarily like what feels like kind of like real world experience, but >> in computer science for you, was it like a bunch of uh like math or did you at least get to focus on like what seemed like more >> more computer things, like more programming things, but maybe less uh practical? I don't know, maybe that's a way to put it, >> right? There was a lot of So, there was balance between the math. There's obviously a series of math that you have to do. I made the mistake. I hadn't taken a math class in 20 years and I made the mistake of trying to test as far
ahead as possible. And so I crammed and got myself into math that I had no business being in. Um, but I had to complete all that through uh integral calculus and uh discrete math and those kind of things. Uh, so there was plenty of that. And then the computer science topics um, you know, they range from the very practical to the more esoteric. So like a programming language fundamentals where you kind of write a very limited programming language by the end of it is is really interesting really eye opening not necessarily applicable to what you're actually going to be doing same um some of them were pretty challenging uh I I found we had a uh operating systems too where we actually work on that little MIT kernel that they that they give you um that was very challenging for me um we had a
database it was database management but it really was was writing the uh search algorithms that a database would use to to do their queries. Um so a lot of really challenging stuff that wouldn't be things that you would probably do in a job but were valuable for kind of understanding the fundamentals of the of just the the field as a whole. Um and then again like almost any degree of course not all of it are going to be things that you're going to want to do. I just finished a a parallel programming course which I found completely fascinating and will probably, you know, won't do things that I'm actually doing and but it's that's fine. I mean, that's part of the deal. It's just part of what a what a well-rounded bachelor's degree is is about. Um, so I thought, you know, there are some
everybody's gonna have their favorites and of course there's two or three professors that everybody wishes you could just take a whole degree from, but uh >> and two or three that you wish you'd never had to meet. Yeah. But >> of course, of course there's and they're well known among the students. But uh it's uh it was it's been a great experience overall. A really great experience. Um very challenging. I expected to be challenged. I did not I underestimated how much I would be challenged and I think I'm really grateful for that because I think you kind of I don't know you you get to a certain point um in a career certain point in age maybe things just you know aren't challenging you to the degree that that maybe you need or maybe that's good for you and uh so to switch careers kind
of forced that and that was that was kind of nice actually. >> Did you find that motivating then? So like I know that when and I guess for me I would have been younger going through school versus like you like kind of switching to do it later but >> I know that when things were challenging for me during school it always felt like I was being defeated and it was like >> it wasn't it didn't feel encouraging. I didn't feel motivated by it. It was constantly like >> why am I doing this? I don't want to do this and just like kind of it felt like I'm scraping by all the time and by the time I was done I was like finally I did it. >> I want to say at the time I probably felt like accomplished that I had succeeded but at
the same time going through it I wasn't like oh man this is challenging I'm going to I'm going to crush it. It was this is crushing me the whole time. But did that look did based on what you just said I feel like that might have been like a different experience for you where maybe it was motivating. Uh I think it was both. I think I I certainly had that those times where it was what am I what did I do? Why am I here? Why am I doing this? >> Um I you know actually the the best way I I I had I partnered with a I was given an an exchange student partner for a group project. uh he was from China and he was struggling a little bit with the language and the topics and everything and we were sitting there talking
and he was just kind of venting to me and everything and I was listening to him and he was kind of expressing some doubts in the program and I'm sitting here thinking I've felt all those same ways but then he's just he said but when I get a function to work I just get so happy and I was like me too I was like I do too and I think we all kind of have that especially in programming and I think maybe that's the reason why you keep coming back to it is it feels really good to solve a problem like that. And so you do experience those times where you're just like I am an idiot. I why can't I figure this out? This is like why can't I get ahead? >> But then you have those times where you where you do something
and you figure something out, you solve a problem and it feels great. Um and I I really appreciate that about about this field. I mean they similar in flying helicopters. Sometimes you would do something and you would you would do some maneuver and you'd be like, you know, that was as good as it could be done right there. It wasn't very frequent. and maybe had that feeling just a few times, but um there was >> I I think that's that's the kind of feeling that maybe keeps you going and and and pulls you through that time because you know that it's going to be tough and you know that there's going to be hard things and even some of the ways that looking back on it the way they designed some of the classes, I remember distinctly now that they designed these classes, they would
give you these assignments and knowing that you didn't know enough to complete the assignment. Yeah. >> And you wouldn't know enough for about another week, but they wanted you to work on it now because they wanted you to jump in and get stuck and frustrate yourself. And then when you got to that point in class, it would really open up for you. And um I didn't really recognize that at the time. And I wish they had just come out and told me that. But it was it it was a good experience. But I of course I certainly had those times where where I just I just felt beat down and looking around and I'm a I'm a dad and I really jumped off a cliff a cliff for this thing and what did I do? I mean certainly went through those moments and and sure
still have them now about looking looking ahead to the job market and everything and seeing what kind of opportunities are out there now and and how many of them there are now compared to what it was even a few years ago. So Sure. >> Yeah. And like it's interesting too as as you're explaining that like in terms of how they design courses and and kind of looking back on it, one thing that like I took away from school like even though it was largely frustrating aside from internships was it that was the time in my life where this is going to sound really weird but like I had to teach myself how to learn. >> Um I think prior to that I had I'm not going to say like oh it's because I was so smart. I feel like it was I just happened to
be lucky in the way that things were presented to me in school that >> it lined up and so for me to do you know well in elementary school and high school I was like whatever it's lined up this way and I happen to be able to do that. When university came I I basic I felt like I was starting at zero in terms of understanding anything even topics I might have crushed before and I'm like I have no idea what I'm doing and it took me my five years of university by the end where I was like >> I think I understand how I learn now and that's one of my that and so like learning how I learn is one of my biggest takeaways and the other thing that they emphasized which was it felt really hidden in everything. But in engineering, it's
really about analysis and trade-offs. And so trying to be unbiased, trying to look at all of the options, trying to do an analysis, weigh them out, that seemed to be like ingrained in like everything in my program. And I don't think I really realized that until I left because the only way that my brain works now, and it doesn't matter what it is, everything I think about, I'm like, what are my options? How do I weigh these out? And it has nothing to do with programming, but those are things that came from school for me. But I don't think uh until I reflected on that, I don't think I had any idea that that was happening. >> That's interesting because I honestly I don't know that I have reflected too much on before starting versus after and kind of just how my thought processes worked.
So that's really interesting. Yeah, I that's something I'll be paying attention to. China. >> Yeah, I know. I know what happens because I didn't pay attention to it until like, you know, like my wife will call it out to me and it's like, >> yeah, that's just how my brain works. Or like I've had friends that are like, why are you doing this? And I'm like, I can't I can't look at things the same way. Um, >> yeah, >> there was something else you mentioned I wanted to to piggyback off of that and now I'm forgetting, but uh >> that's okay. Um yeah, I I really think that that reflection was uh was important because when I was thinking about school, I'm like, you know, people would say like, would you do that again? Or like if you if you had to start now, like,
you know, how would you approach things? And I'm like, >> I don't think that you need to have a degree. Like some jobs will say it and like even though they say you don't need it, but you know, if you have it, I think that's great. But would I tell people you must? No. But I still wouldn't change what I did. like I would go back. I would go look for an internship program. Like that's exactly what I would do. So I don't think I would change anything. Um yeah, I'm trying to remember. I had a question that I wanted to ask you that was kind of like a before and after kind of thing for school for you. Um Oh, it was this. It was imposter syndrome. So not quite the same, but um I was curious because going through school it it sounds
like based on what you were saying, you probably experienced at least a little bit of imposttor syndrome. Um, can you talk, if you're comfortable sharing, can you talk about that a little bit maybe versus what that looks like for you in or looked like in school for you versus like in in work? >> Sure. Um, so I I mean I think everybody I having a prior career I had some experience with that in the past. Um, especially I think in the army and flying helicopters. I mean, it's kind of ridiculous how much responsibility you're given in your mid to late 20s to go command missions and take $40 million aircraft out and all these things. >> That makes me nervous. Yeah. >> When you when you look back and you're like, they let me do that. I was actually in charge of people. That's ridiculous.
>> Um, so you certainly have I I have some familiarity with that experience in the past. And um so now in my role as a student developer, I'm also a student mentor. And um so some of what I do is is when newer people are hired, I kind of explain things and show them things. And nobody comes in knowing C andnet, at least nobody I've worked with. Um and and so you kind of walk people through some of those concepts and explain some things. And I think what I found, what's an effective way for me to deal with it is is to be really honest with myself and the person that I'm that I'm sitting across from and you know, I'm not sure that I really understand this. Like I know this is the way that we do it. I this is is my understanding,
but I think that's only about a 50% understanding. I I don't think I really I I was explaining dependency injection to somebody the other day and I was like, well, I mean, the one of the main things is you have the separation of concerns and it makes it so that you don't have to instantiate a new instance of a class every time you want to use this service. But there's way more to the topic than that. That's that's not it. But I mean, that was kind of, you know, that's my understanding. And they ask some questions and and just, you know, answer what you can and when you don't, you're like, I really don't know. Like I I I don't know. I'm going to have to uh learn more. It's something that I need to to know more about. But um yeah, I certainly have
it. And you certainly have feelings of of of just of of like, man, am I ever going to get this? Am I you know, if I I could get a job right now, could I even do it? Could I really do it? And I think I think some of what you see on that and I don't think it's a bad thing to have those thoughts because I've encountered like two kinds of people that are very confident in themselves. And the more rare kind are the people that are they're really good at it. These people have been just tinkering around with with a Raspberry Pi since they were 11. And I mean they're amazing and and they should have all the confidence in the world. But that's about one out of every 20 really confident people I've come across. and the rest of them, they shouldn't
be confident. They're bad. They're they're really not good. Um, at least at the student level. I mean, it's different. You're talking about a different population, but at the student level, I mean, it's people that that really have a lot of faith in themselves and should not. Um, so I think if if you're feeling that, if you're if you're asking those questions of yourself, I think that's normal. Congratulations. You're a normal person. You're not one of those extremes. So, it's okay. >> Yeah. And that's a I think that's a really good reminder, right? Like it is absolutely normal. Um I don't have like stats to prove it or anything like that. But I think it's very normal. I I suspect that especially people that get into like software development um again don't have stats on it but I I think that there's probably you know majority
of people in software are probably people that are more intellectual and probably enjoy like problem solving and challenges and sort of you know group stereotypically grouped in that kind of category and I think in that group there are people that are very much like I I like the challenge. I I want like whatever the next step is, I want that. And the side effect of that is that you keep falling into these scenarios where you have imposter syndrome. >> And so it's like, hey, like, you know, this thing is scary. I don't know it, but like, okay, like I'm here. We're going to figure it out. And like you were saying, you know, you end up solving problems and you like have this like this feeling where you're like, hell yeah, I did it. Um, and you do that enough until you start going like,
wait a second, I know this stuff now. But then you're already getting into the next thing where you're like but this other thing I don't really know and like am I smart enough and and when it's career time and you're like you might be working on a project and you know you're the the newbie on the team and you're like I'm never going to know this stuff. Everyone else is so smart. How did I even get here? And then you stay there a little bit and you're the subject matter expert now but they're getting you to work on a different project and it just it keeps repeating. >> Um it does. It does. >> Yeah. And the fast pace of things that change, especially if you're into the JavaScript world. I mean, I don't know how you could not feel like that at all times.
Most of the most of the uh students that we hire are pretty good JavaScript developers and uh we I I'm working with one right now and he's way better than me at JavaScript. He just got hired. He's a sophomore. He's way better than me at the JavaScript stuff. And uh so I'm just like I'm supposed to mentor you, but how do you do this on the front end again? So it's I think there's always some of that and some of it's domain specific, but yeah, that's a great point we said is is the more you grow, the deeper holes you dig for yourself and and you're going to feel that more and more. >> Yeah. So that's why like it is a good reminder that if you start to feel that way, it's not in my opinion, it's not a matter of how do I
stop this feeling from ever coming up. It's not about how do I prevent it. It's just like acknowledging that it will always keep coming up and then learning like what that means when it's happening. It doesn't mean that you genuinely are like a stupid person and you'll never be successful. It means like you are challenging yourself. You're probably in a scenario where you're going to be learning a lot and growing and that's a good thing. So even though it feels uncomfortable like maybe don't like push it away and try to to hate it. So >> yeah. Um you mentioned something else too around like like just mentoring people in general, right? And uh being able to teach people and I thought it was interesting that um the way you explained that is it reminds me that it feels like when you're trying to explain topics
to people, this is like one of the best ways that you get to see like how well you understand something, right? Um so you go through this process and um you could take like I would encourage people to try this genuinely if you're like I want to you know I want to see like where I need to like focus my like you know whether it's attention at work to like learn up on a new skill or outside of work for hobby projects whatever try teaching someone something and it doesn't have to be like another developer try talking to someone else who doesn't know the topic >> and if your like significant other is willing to listen to you about this like great choice. Um, and try to explain something to them in a way that they would understand it and you will quickly find how
well you understand it. So, >> I don't say I don't have a blog, but I keep wanting to do one, not because anybody would read it or anything, but just because I think if I force myself to take it seriously, that would be the primary benefit is that I would it would force me to think through things and force me to to confront whether or not I really understand something as well as I think I do. Um, and and that is absolutely one of the best ways to do it. As you I think as an instructor pilot, one of the things some instructor pilots say is is I learn as much from my students as they do from me. That's ridiculous. No, they don't. No, you don't. You they learn way more from you than than you learn from them. But teaching the process of
teaching them will is instructive. Um and so I've got just a tiny bit of experience doing this in software. Really not much. But uh obviously I come from a teaching background and and that's uh that's a big part of it is is explaining it. And at the very least you'll catch yourself short and be like I'm going to stop talking right here because I don't really understand this one. And then you go back, you know, if you're a curious and motivated person, you'll go back and and try to firm up your understanding and things. >> Yeah. As long as you're not the the type of person to pretend and be overly confident and just >> Yes. >> Let me make this up. Yeah, that certainly happens. >> Yeah. Um, so yeah, good to catch yourself when that's happening. Um, curious because you mentioned uh you'd
be interested in writing a blog, why haven't you started? >> Time. It's been time. It's uh so between work and the credit load and being a dad, there's only so many place I can keep spinning right now. >> Yeah. No, I was curious because I wanted to say like um literally the reason that we are on this this call right now is because once upon a time I started writing a blog for the same reason. Uh it was for for doing engineering like management and trying to transition from being a programmer into a manager and I said I need to start writing down stuff about this. Um I gave up over 10 years ago because I was like no one is reading this. Why am I doing it? It was almost like I I tricked myself. it was for the wrong reason that I wanted
the feedback, >> right? >> Um, and then yeah, I picked it up again over a decade later and I regret that 10 years of me not having that, you know, that process of let me just write down my ideas, let me learn about like what I'm doing by by writing it. So, um I just wanted to say to you like if you get the time, please do it cuz I think it would >> I really do want to and I I I think there's value even though you don't um I think it's easy to learn from somebody who's only a few steps ahead of you because that person it's it's easy to relate to to where you're at. >> Yeah. >> Um so just simple things that you know senior engineers like yourself would take for granted like oh my gosh I just committed to
the wrong branch. I pushed and committed to the wrong branch. What do I do? >> Yeah. you that's something you've dealt with a thousand times whereas everybody else uh you know junior developers like oh my god I really stepped in it here what do I do >> I'm fired like time to go >> exactly so I mean there's just those kind of things um there's all kinds of basic type and that's actually what I would I' been kicking this idea around in my head for a while and that would be the direction I would go is is for me I want to keep learning more advanced things but I want to come back and and and focus on basic things >> yeah and and really build that solid foundation. Actually, one of the kind of projects that I'm I'm working on right now, uh it's
probably not helping my employability, but one of the things that I I realized about three months ago maybe was that I don't know how to build anything without a framework. >> Okay? >> Nothing. And so I was I was like, you know, it would be an interesting challenge to if all you had was HTML, CSS, JavaScript, a programming language, and a database. That's it. No libraries, no frameworks, nothing. And you have to build something, anything. It it certainly wouldn't be complicated, and it certainly wouldn't be a way to to actually build real world projects, but the process of doing that would be informative for learning. um for learning how frameworks work and how they help you and and and what they're managing for you. Um so one of the only books I could really find on the topic was I don't know if you've heard
of John Ducket. Um he's got these really nice >> uh he's got these really nice books that his HTML and CSS and JavaScript books are completely out of date now which is a shame. But he just released uh two years ago I think two or three years ago that his PHP and MySQL book and that's exactly what it does. It takes you through the process of building a site using nothing but PHP and MySQL and it's fascinating. It's a it's really been interesting trying to work through that and um you know having to just you know spend a day building a router which is >> a solved problem. It's it's it's a complete and one of the things with especially with ASP.NET it's a very thick abstraction layer. Um and it's great if you know what you're doing. It's built around all these best practices.
And if you know what you're doing, it's great. Um, but if you don't if you aren't familiar with these best practices, if you don't if if you don't understand really the benefits of loose coupling and and solid design principles and all these things, it's it's tough to it's it's tough to approach that framework. Um, and so it's it it's really been instructive to kind of take it back and >> try to walk things through from the beginning. But again, I don't think there's a lot of people that are looking to hire people to build websites in PHP. >> What I wanted to say on that though is like um I think there is a ton of value personally a ton of value in that. Um my and I haven't told you this but like before I went to to university whatever I'd been programming for
like another five years before that. um four years, 5 years, whatever something and through like my own hobby programming and that can like continued through university. All that I did because I I actually just really I don't know I'm super nerd I guess but I just really like to program. So as a hobby it would be building random things. >> But what I did was exactly what you're saying. I would go instead of taking a framework that already worked I would be like how do I go make that? >> It's not effective. It's not effective at all for building anything, but >> it teaches you so much because in your mind you go like, I think I see how this works. >> I'm going to go build my own. And then you start building it and then you start to realize how much goes into
something like that. How complicated it is, all the edge cases, all these use cases. And then you go, "Oh, that's why I should be using a framework when I want to go build the real thing." So, >> yeah. Exactly. because there's so many things that that you could there's just the multitude of things that you could mess up or vulnerabilities that you could leave exposed that frameworks handle for you is you know I I mean I'm learning I I'm learning a lot a lot more than just about PHP. I'm learning about web development through the course of this book and it's it's really it's been it's it's really been a great learning experience. So, I wish there was something more like that in our in our education, but it turns out actually if you if you choose the web and mobile application development focus in
the computer science major, you get four classes on the topic. So, there's only so much they can fit into those four classes. >> Yeah, that's uh that is pretty limited. But yeah, I I personally think like that like when people say like, oh, like side projects, what should I put on a resume? Like I can't just put another to-do app. Like I hear you. A to-do app is not going to on its own stand out and be shiny and make you look different than someone else with a to-do app. But >> I said like from my perspective, if you use those projects to demonstrate learning, then you can do any app you want and talk about the things you learn. So you could do a to-do app and you could say >> I'm just making this up, but you could say like I built my
to-do app and I wanted to have it backed by a SQLite database and because I was curious like I ended up making it so that I had a facade layer and a plug-in system and I could swap out the databases and that way it supported Postgress, MySQL and SQLite. That's a fancy to-do app and like you can take anything and and basic this is gonna it's totally ass backwards for software development but you can take anything and over complicate it from a learning perspective to teach yourself like >> right >> how to do things. No one needs a to-do app that does that. But then you would learn so many patterns and things that like >> oh how did I have to get a common abstraction layer across all these databases? Well maybe I use a repository pattern. Maybe I use Entity Framework Core and
that's that's I didn't know about Entity Framework Core. Maybe that's a good opportunity for me to use it. So I really encourage people for resumes and stuff in their side projects. It's like you can actually in my opinion build anything and then demonstrate that like for what you were learning and I think that can work really well. How do you how do you communicate that that what the learning objectives? I mean in a resume you have pretty limited space and to kind of explain your rationale or or you know kind of what your objectives were for it. Um do you recommend like a portfolio site for kind of explaining going into more depth about about the choices that you made and what you learn? >> I I think so. So like I always tell people this and this is all like this is my opinion.
There's going to be you know the next person is going to say Nick you're totally wrong. Like here's how it works. This is my opinion from looking at résumés and navigating hiring and stuff like that, but um I've heard people say, oh, like you know, keep the resume limited so that you can wow them in the interview. And I always say if I'm not wowed on the resume, there is no interview. So, >> right, >> the the wowing needs to happen on the resume. That doesn't mean you can't have a portfolio site. I do highly recommend that because if there's enough candidates that are wowing interviewers, they're probably going to go to the portfolio site next. So, it's all about like as much as you can on the resume that is impressive, then follow up with portfolios and all that. But in terms of like
side projects to communicate learning, I would I would literally call it out as such. So, like you know the project is to-do list app. Okay? like I and then you would say like build a to-do list app and kind of list the tech you use. So, uh, you know, build a to-do list app in Blazer and, um, backed by a SQLite database and then, you know, next line is like, uh, uh, I don't know, something like learn. I'm terrible at doing this on the spot by the way, but you know like uh >> learned like refactoring processes to be able to and then you could say like uh introduce like a repository pattern to swap swap things out with a configuration and dependency injection to support more databases. So you kind of call out the thing that you were trying to accomplish and or learn
through that. Um in my opinion that's a great way to load in technologies. So, as an example, you're mentioning like doing a lot of .NET building for school and stuff like that. Um, if you were saying that um I'm just going to make this up. If you're like, well, I really need to go learn Go. I need to learn Go because I want to get a job uh using Go, but literally nothing I'm doing at school or like with the part-time job has anything to do with Go. >> Yeah. >> Okay. Go build something with Go. Like, and then you just use that to call out that you're learning. Um, if it was a technology or like a database choice, again, pick any project and kind of use it to stack in technology choices just to say that you have some exposure to it. >>
Right. >> We actually have a class I'm trying to get approved to take it again called projects where you get to uh link up with a professor, explain what you're trying to do. I I got to take it because my professor that taught advanced web development was on paternity leave and the other options weren't very good. So I found a professor that would work with me and I actually built I built a project over the course of the over the term and so we went from nothing to something. It's online still. >> Yeah. >> But uh it was it was the it was really quite an experience. I'm I'm trying to do it again. He he's got a I've been wanting to learn PHP and >> um I want to kind of experiment with Laravel. I think it would be a great little framework for
side projects and stuff like that. Um and uh and he's got something he's got something for the university that only the servers that it's on PHP is the only language and so he has he's been wanting to update it but he doesn't know or want to learn PHP so he's uh leaving it be but he I mentioned that he was like you want to do it would be a great it'd be a great way. So, it's uh so anyway, if anybody is going to school, that's something to look into because that was one of my best experiences over the course of this whole degree program was was doing that uh doing that project. >> That's awesome. Yeah. Yeah. Like I think that just kind of goes back to I'm sure that type of thing is closer to a real world experience. >> Yeah. >> Building
software, right? Not just the stuff that you have in in your classroom. Um there's a couple more things I wanted to touch on. There's one I want to talk about AI. I want to talk about AI, but there's one I'm just looking back at this list of topics that I see pulled over on the side here. >> I see something about Gen Z, and I'm curious. >> Yeah. >> Yeah. What uh what has your experience been like with the Gen Z? So I think uh get the problem with being the young generation is is you you get slapped with the reputation of all the worst among you and I think Jenz certainly suffers from that. >> Um my experience so we we have a pretty competitive hiring process. I actually took part in it uh this last goound for hiring people and I don't know
how I ever got hired. These kids were were way better than me. Um, but they um, so we maybe have a different kind of caliber of of of people that I actually work with on a day-to-day basis and and they're fantastic. They're they're competent. They're smart. They're for the most part pretty good communicators. I I do think there's maybe a little bit of truth to the um, I don't want to say entitlement that gets thrown around too much, but but there's there's certainly an attitude of I don't know, maybe expectation. um that that maybe older generations didn't have. Um but it's tempered and and and I think for the most part um if people, you know, obviously people are looking to hire juniors, that's the age they're going to be looking for. I I don't think if you if you choose well and you've got
a competitive process, I don't think you'd be disappointed. I I think uh I was I've been nothing but impressed with with almost everybody I've worked with now in classes and you get some people that maybe aren't quite as serious. Yeah, sure. There's >> there a you get linked up with some people on some group projects. I I certainly had, you know, some of the people that uh that want to let things go in let group work go until the very end. I in that database management class, I uh we did not do so hot on the first project because he didn't want to start until 10 o'clock the night it was due. Um, of course, I don't have that luxury. So, I've got a a nine-year-old, so I um I've got to keep banker's hours on this kind of stuff. But, uh >> um yeah,
from then on, I just did everything for the group for the entire rest of the term. So, I certainly have experienced it, but like I say, I think I don't think it's difficult to tell those those people apart. I I think um you know, as far as as you know, putting like projecting those those negative opinions on an entire demographic, I think is ridiculous. Uh because most of them, at least most I've worked with, have been pretty sharp. >> Yeah. No, no, that's awesome. I I was kind of laughing when I saw it written down as like a potential topic to go through and I'm thinking like cuz we didn't talk about this beforehand. I'm like I don't know. You're taking to be like they're the worst people ever to work >> they're pretty solid. They're pretty for the most part like I say the
ones especially the ones that that I work with are pretty solid. >> That's awesome. No, that's good to hear. Right. It's like it's uh I think probably in all of our hearts we probably know that but it's like you said it's way easier for everyone just to be like well this generation and just like you know take a paintbrush and >> you know you all get labeled the same way. >> What I will say is uh you hear like the stories of people in third world countries that think Facebook is the internet. I think a lot of them do think Nex.js is software development. I have like so without um I don't have direct hands-on experience like uh like sort of in the same way that you would necessarily with like with Gen Z. Um, but I I feel like my take on like I
don't know the overwhelming majority of people coming into software development is like it's that it's like that is all that it is and it's like to me that's fascinating that it's like uh it it seems to be so focused on that and I can't make the claim that everyone thinks that way but this is >> my observation of people coming in. I I do wonder what's driving that and so they all know React. Everybody learns React and then I it's just an easy step to to Nex.js I guess. Um and then I think maybe because it's it's pretty ingrained in the startup culture as of now and and a lot of them do have aspirations to you know work in that kind of setting. um they just gravitate towards it that and and when you see you know your friends are working in that and
so they show you and it isn't hard to get started and and especially now with the AI stuff it's you know you can you can get something you can get something up pretty good pretty quickly you know whether it's it's good is obviously you know different story but um >> but but the AI seems to be pretty proficient at developing helping you develop nextjs apps for Sure. So, but that is yeah, it's it's universal. It's crazy because I still just like just know the have a rudimentary understanding of it. >> Uh and they are so fluent with it. It's just like it it's a little it's a little crazy. So, I I do wonder if I'm missing the boat on next chance. Maybe I ought to spend some time. >> I certainly am in a similar situation because you mentioned .NET like everything I do
is C and it has been for as long as I can remember. And it's not that I don't know other programming languages. It's just that I am so much more comfortable with C that you take anything to go build and I'm like, yeah, you know, TypeScript is probably a better thing for that, >> but I'm going to use C# because I can. Um, or like I will find something that lets me use .NET because I just like am way more comfortable with it. >> I'm admitting that that's not a great way to approach things, but it's just how I operate. So, um, but I kind of have a similar experience with the Nex.js JS stuff like uh stuff I'm building on the side in our front end. I'm like I don't like touching it because it's not C and >> right but other people seem
to get it really quick. But you mentioned AI and I would say that my experience with AI in particular in the front end stuff seems to be really good and I don't know if that's because I'm so bad at the front end that it could do anything and I'm like hell yeah this is the best. Um, but like in terms of, you know, I've used like co-pilot with uh like GitHub pull requests and just made like a a oneline issue like you know add a add a filter bar here and add the ability to sort on these fields >> you know no detail about how to do it, how to style it, what like how to actually make that work with the data structures >> just does it works perfectly >> like okay like >> it seems Seems like it does a pretty good job
for that kind of stuff. >> Yeah. Yeah, it's it it does. Um I I don't know, maybe this is the old guy coming out in me, but I worry about I worry about pushing a commit that I don't understand. >> Yep. >> I I don't like that. I don't feel comfortable with it. Um I I don't like it. I what I my approach to AI while I'm actually developing something has been um obviously there's the code completion but honestly most of the time I find those annoying although sometimes they do give me something that was great that I didn't think about and that was and so that's very nice. Um I use a lot for troubleshooting. Um, I think, you know, there's some things are better than others for that purpose, but I think the what I've kind of landed on as my favorite use
case for is I've treated AI kind of like office hours um with a professor. >> And so, it's a chance to take something that maybe I don't understand or that I want to check my metal model on and I can plug it into uh Claude or Chad GP. I have a subscription to Claude just because that's the one I decided to buy. I don't know that there's much of a difference at this point, but uh so you know, you can paste things in there and say, "This is how I think this works. Am I correct?" And sometimes yes, and sometimes, you know, kind of you're kind of correct, but there's actually more to it. And then I can start asking questions and I start kind of having a dialogue with it. And I think that has been my favorite use case for it. Now, that's
not a fast way to develop, but that's certainly not the vibe coding or, you know, how you would interact with some of the more uh some of the newer tools like cloud code or the Gemini CLI and all that kind of stuff. Um, I really haven't used any of those because again, I think at the stage that I'm at right now, I don't see I don't see how it's going to benefit me in my career to just have a a generative AI make things for me that I don't really get. >> Yeah. >> Um, I I just this is going to be kind of the needle that all the junior developers are going to have to thread is is there's a productivity expectation, but you also need to learn. Um, you also are gonna, at least for this foreseeable future, we're going to need to
actually understand this stuff. And it's really easy to shut your brain off and and just kind of let let Claude take the wheel. Um, and I I just I fail to see the benefit in in that right now. Um, so I don't know. It's going to be tricky though for for juniors in particular. I think seniors right now, it's a fantastic tool to make you more productive. you could do things and certainly weigh it into areas that aren't your area of expertise um to to get something done like on the front end. Um, but it's it for juniors where we're still developing these metal models for everything for for the back end, for the front end, and it's and you know, there's just new features like, hey, you need to incorporate this new o system into this project, and it it's it could be really
easy to like, cool, let's have cloud do it, and then it's like you have no idea how to how to do that again the next time around. So, it's it's going to be a tricky thing. I I I like it. I appreciate it, but I've kind of tempered my use from it and I've so right now I've got actually copilot turned off in all of my editors um just because I want to focus really on on learning right now. I still use I still use it but I prefer to use it like in the browser in in more the chat interface. >> Right. >> That that's how I've gone about it. >> Yeah. No, that totally makes sense. I can absolutely resonate with the like don't want to push code unless I understand it. Um >> for like even some of those front end things
I was saying like I need to pull down the code. I need to try it. I need to like if I don't fully understand like maybe what the CSS is doing exactly or there's some weird nuance. I'm like I want to at least make sure that I'm exercising it like manually so that I'm not like wait a second like that code path was never hit and that's like a a little surprise for later or something like that I need to make sure that I have something that I can understand even when it is in a domain that I don't totally get and if >> if walking through it is not going to answer that for me >> the best part about the AI with like that produced it is also the AI that can answer questions for me right Yeah. >> Hey, why did you
put this code in here? What does this code do? And then it might explain it and I might go, why would you do it that way then? Like, now that I know what you're doing, why did you do that? Um, and then it might tell me something I didn't know. Or maybe it'll do the typical, "Oh, you're right. Like, I'm so wrong and you are so right, let me change that." >> You're absolutely right. >> Tell me. >> And that's one of the things that makes me nervous about it a little bit is because I know it's it's proven to me time and again that it's not going to come up with the best solution. And and so I really I I have a difficult time. >> I don't know. I I really I know this is the the thing and everybody's like, "You're going
to get left behind if you don't know how to do this." Like, how? Well, you're telling me it's so easy to do that all I have to do is just type natural language in and I can build a web app. But also that if I don't do it right now, I'm going to be left behind. It's like no, I'm going to focus on learning as much as I can. And then certainly when I'm when I'm in a role, of course, I got to, you know, I got to put food on the table. So, I'm I'm not going to stew it entirely, but I but I need to, you know, I need I feel as if it's very important to to learn as much as I can and uh and use that to kind of augment or as a productivity boost and and all that stuff
and then obviously to wait into topics that you're just not familiar with and and you can't be constant. we have the the benefit at our work and we had these incredible senior developers that part of their job is to help us and that's that's awesome and that's not a real job though it's not I can't be constantly hey teach me how to do this thing like that's not how it works you know there's going to be an expectation of independence there >> right >> um so it's a great tool for that um but as far as as far as the actual you say, "Yeah, it's it's just going to be a needle that that everybody's going to have to thread." >> And I I can really appreciate the emphasis on that, too, right? That it's like that it's not easy. It's you have the tool
in front of you, it makes it so it makes it easy to go use the tool and neglect like or maybe I shouldn't even say neglect. Like it could be accidental where you're like it's just convenient and like then I end up bypassing a lot of the learning opportunities. So I think that convenience part is really challenging. people do have to balance it. I think um like for myself because I manage engineering teams and I don't code at work um I use AI at work differently like trying to see how I can help in my current role but outside of work uh when I'm programming stuff I'm trying to use it in all sorts of different ways. So love using chat mode to be able to go back and design stuff. Um, someone recommended, and I don't know why I didn't think about this earlier,
but like basically just use like audio mode, so you can like talk like I use my phone a lot and just talk into my phone. Okay. So, I'm not trying to like text to chat GPT or something like let's go make this design. I just talk through it. >> Um, so I like that a lot. Um, uh, the autocomplete stuff works really well for me with Copilot and Visual Studio, I think, because I have so many patterns that are similar that like when I'm going to code, it's just like you have this in 10 other spots. Here you go. Um, so autocomplete works well. Agent mode sucks. Um, I have a really difficult time with agent mode in VS Code and Visual Studio and Cursor. Um, co-pilot with the pull requests is the best that I've used so far. Um, I'm not just saying I
actually like that >> it it seems to me it seems like it is the >> it has the best balance between I don't have to be so specific with it and it still does well. >> I've been told by people like when I say agent mode's not working well for me, they're like, "Oh, you need to prompt better. It's your prompt. It's your prompt. You need to give it smaller things." And I'm like, if I have to spend that much time, I might as well just do it myself. So, um, co-pilot with pull request seems to be that really good balance. Um, and then the other thing I'm trying out now, and it's, uh, it's not working out so well, but it's using like agents in like a swarm mode to get like eight agents together and just be like, go build something. Um, yeah,
>> it so far is the equivalent to eight really dumb agents compounding on the dumbness. Um, so that probably comes back to me having to prompt it better. So, you know, I do want to take responsibility for that. But for me, this is all practicing with the tools because >> I'm hopeful if I just keep using them and leveraging them, but not like totally replacing my whole development process that they get better. And then when they get better, I don't feel like, "Oh crap, I haven't seen any of these things yet, so I'm crossing my fingers." >> Right. >> Cool. >> But I think it's I think like you're you're you're looking at from the standpoint of of being able to successfully evaluate code and, you know, where where other people are going to be out or more junior developers, we've got to get to
that point. >> Absolutely. Yeah. >> So, it's it's if we're just sitting there vibe coding our way to a senior developer role, it's it's not going to turn out well. >> Yeah. You you said it. I can't remember what specific topic we were talking about, but um like you kind of mentioned like getting stuck, right? I feel like if you are using AI and all that you're doing is outputting code and you don't have those moments of getting stuck and being like how how does this work? Like how do I get out of this hole? Um, if if the only way to get out of the hole is help chat GPT or help Claude, like that's not really it. You need to be able to have that critical thinking to go like what the heck is going on. Getting stuck on things >> is not
ideal for productivity in the workplace, but getting stuck on things is amazing for learning, >> right? >> So, you kind of have to lean into that even though it's uncomfortable. >> Mhm. For sure. >> Well, this is super cool. I really like getting to hear about your experience kind of going through this. some little bit of the Gen C stuff as well. Uh it seems like AI is having an impact for sure, but you're also being cautious with it, which I think is I think that's a really good move so you can focus on on the right things. Um and yeah, flying helicopters, I think that's so awesome. When's I should I should ask when's the last time you you had flown a helicopter? >> 2018. Uh August July of 2018 was the last one. So, I'm fully unccurren and uh complete. I have even
gotten my flight physical redone. So, I I really went away from it. So, maybe I'll fly planes again. So, I've never flown a plane in my life, so most people at least do that. >> Yeah. Yeah. >> Maybe at some point when I'm done with school and lay that sweet senior developer salary, I'll start going out and renting a plane and flying again. >> That's right. The first first purchase plane. Um, >> yeah. >> Cool. Well, Mike, thanks again. Um, is there anything that you want to be able to to say to folks? Uh, not to put you on the spot or anything. You don't have to make a speech or anything, but any any sort of shout out or, you know, uh, anything you want to say? >> Uh, I think maybe just uh, just Oregon State. This is a really special place. I
really love uh, going to school here. I'm from the Seattle area originally, so coming down here wasn't maybe in the normal course things from people from that area. But this uh this is a really special place. It's a great school and and uh in particular center for applied systems and softwares part of the software development group here at Oregon State. The mentors have just been incredible and uh just a great place to work and and uh kind of learn about this field as you're going to school. >> Awesome. No, well, thank you so much for sharing and again I do appreciate the the walkthrough for your experiences and I think that's going to be really helpful for other people. So, thanks again. >> Thank you.