Not everyone gets the chance or has the time to go to college for a formal computer science degree. Sometimes, it isn’t until we are past the typical college years that we have a change of heart on the career choice we have made. Maybe the career isn’t satisfying. Maybe it isn’t paying enough. Maybe it isn’t challenging enough. The many reasons why we change careers is less important than the end goal. If you have always wanted to be a software developer, then be a software developer. Don’t worry about age or what stage in life you are at. Your dreams can still come true with perseverance and dedication.
Meet our next guest, Marcus Blankenship. Marcus began his career with some formal education but was never able to finish the degree. Yet, he used the knowledge and skills that he gained to learn how to learn programming languages, and you can too. Marcus’ experience provides for a unique story because he experienced some serious struggles early in his career that almost resulted in job loss. But, not only was he able to move past those challenges, the changes he made brought his career more success than he imagined. Listen in to episode 40 as Marcus and Arsalan hash out the details.
Marcus Blankenship’s Bio:
Marcus Blankenship is a consultant, author, executive coach and a Calvinist. He serves as a management consultant for software managers and leaders. He helps solve problems and seize the opportunities that his clients know exist – but struggle to find. He has authored several articles on management, jobs, programming, and self-improvement at his website, marcusblankenship.com.
He graduated from the Oregon Institute of Technology, worked in software development for a number of years rising into management levels. Then he became a guided selling manager for a door systems manufacturer until 2010. He also worked as an adjunct faculty member at the Oregon Institute of Technology until 2013.
He founded the TWUP tracker in 2011 that helps Environmental and Compliance managers’ tracker water usage against permits. He currently serves as a project director and an adviser for a web and mobile app company. He also owns the CREO Agency, where he gets paid to coach newly minted technical managers, consultancy owners, and startups. His clients quickly feel dramatically more confident and capable and start seeing better performance from themselves and their teams within weeks.
Please say hi to Marcus on Twitter.
Episode Highlights and Show Notes:
Arsalan: Hi, everyone. Today, I have Marcus Blankenship with me. Marcus, how are you?
Marcus: I’m well. Thanks for having me on.
Arsalan: I’m so excited to have you on. You have a great story. You were about to get fired after having warnings after warnings, but you somehow managed to stay on and remain with that company for a long time. So, we want to talk about this story a little bit. But, how was the feeling? Were you really scared or apprehensive? Did you doubt yourself during those years?
Marcus: Well, I wish I could say that I had been treated unfairly or my boss was a jerk, but he wasn’t. It was all me. Yes, I was completely scared. I think I was really arrogant at first. I kind of felt at first like maybe I didn’t deserve it. Maybe I was better than that and they just didn’t recognize how good I was. But, when I finally understood that in two weeks I was going to be fired if things didn’t change, it got my attention. I went out to my car, put my head in my hands and cried because I realized that I was about to screw things up.
Arsalan: Yeah, that’s got to be hard for anyone. We’ve all been in uncomfortable situations, especially when you’re just starting out and are unsure of yourself and don’t know where you stand and now your dreams are going to be shattered. You dealt with it and we’re going to talk about that, but first let’s talk about you. Who is Marcus Blankenship?
Marcus: Marcus Blankenship is an old guy who lives in the desert of Oregon, sort of in the middle of nowhere. He has found the things he really loves in life and at this age is helping developers become greater managers and even helps developers transition from their first promotion into senior developers, and helping experienced managers make their transitions into other levels of management or leadership roles. I find that the transition period that we have was one that was really hard for me personally for a lot of different reasons.
Marcus: It seems to be a pretty universal problem that it is hard for a lot of people. So, I think it is my mission in life right now to help people make those transitions easier and more confidently.
Arsalan: Yeah, I can speak to that. There are lots of people who I know like senior and junior developers. They have this dream of going up through their career and the ladder and getting into a management position where they can influence the direction of the company or organization they are in. We’re going to talk more about this, but I want to see how you got into programming. What was your first encounter?
Marcus: My parents got a small inheritance when I was twelve and they bought a Commodore VIC 20, from Sears of all places. They put it in front of the television. We only had one television in the family room where I lie on my stomach and learned to program Basic. We didn’t have any way to store programs. I think I had a single cartridge game that was Star Trek.
Marcus: I bought a magazine that had program listings in it. One of them was a text adventure game. I typed it all in. It took me hours, debugged it, all the semi-colons and all the little weird things about Commodore VIC 20 Basic. I got it to run and then realized that I would have to leave the computer running forever if I wanted to keep it around. So, that didn’t work very well because that night everyone wanted to watch television and everything got unplugged. That was really my first exposure.
Marcus: I later upgraded and bought my own small television and moved the computer into my room because I was the only one who really liked it. I proceeded to dive into this little 2k device called a Commodore VIC 20. Eventually, I owned a tape drive for it, which I thought was amazing because I could use audio cassette tapes to store the programs that I typed in. I then upgraded to a Commodore 64 and then an Omega, and then was able to go to a local engineering program. Oregon Institute of Technology had a software engineering program, so that’s where I attended college.
Marcus: I am fond of those people out there who remember typing in code and it only ran in memory—you had no way to store it, at least for me. I was too poor to afford the tape drive.
Arsalan: Yes, those were the days. It’s also incredible because the typical ambitious program you wrote was not doing a whole lot. It was also small. You weren’t trying to build a multi-tenant website or trying to do any real-time communications. There was no way to do this type of communications. There was no internet. I think it’s fascinating that the people who grew up with these smaller computers and memory constrained devices learned some of the really low-level stuff. You were probably doing Basic. Did you say which programming language it was?
Marcus: It was Basic with a little Assembly mixed in and certainly some peek and poke commands to do register manipulation and stuff.
Arsalan: Yeah, so that was hardcore. So between the time that you were tinkering with these devices and the time you went to college, how many years had passed?
Marcus: It was 6, or maybe 8 years.
Arsalan: Okay, so during those 8 years did you continue working on software development? Were you interested? Were you reading books? What were you doing?
Marcus: I was continuing to program. I got a paper route. I upgraded my own computer. I got an Omega. I indulged in playing games, but I felt computers gave me a power and a freedom that I didn’t find in my social life and in real life: the ability to control the environment, to feel like I was master of the domain.
Marcus: Then I actually got a modem and my world opened up because bulletin board systems were very common. I began dialing all over the globe which caused my parents no small amount of stress, not so much for the downloading of programs, but more for the message boards. There was a pretty vibrant mid-80’s BBS scene that I was a part of that sort of had a gray hat layer to it as well. Everyone was just really exploring the boundaries of what these computers could and would do in the future.
Marcus: At one point I became quite poor. I got married and I had to sell my computer. We had a child and I believe I bought a data general terminal and had to memorize all the haze mode of AT/DT commands in order to type them in to get the modem to do what I wanted because it was just a dumb terminal with no operating system. I used that to connect to all these BBS’. Even though I didn’t have a “computer,” it was a screen, keyboard and modem put together off of an old Data General Eagle. So, the long and short of it is that I’ve always been really excited and nerdy about technical stuff.
Arsalan: That’s interesting. That shows your commitment. You’re really passionate about it. Lots of people are not, and that’s okay. A lot of people encounter software development or programming later in life and they can still succeed in today’s availability of technology resources, Google, Stackoverflow, and books. There’s so much you can learn even when you aren’t grounded in that. But it’s interesting that you spent so much time doing this. Did you think about going to college and studying software development or computer science professionally?
Marcus: Yes, since I was 12. Since I got that first VIC 20, I knew that this was going to be my vocation. I’m not sure whether I always believed that I would get there. I always had a lot of self-doubts, but after I graduated from high school, got married and worked at a few jobs, I realized that I wasn’t going to get anywhere with what I wanted to do unless I went to college. So, I enrolled in the software engineering program at Oregon Tech.
Marcus: We lived 100 miles from the college and every day I drove 100 miles each way to attend school there. I would get up at 6:00 A.M. and be there around 7:30 A.M. and attend 8 hours’ worth of school. I didn’t have a computer at home so I had to use the computers in the lab to do all my homework, and then between 7:30 and 10:00 P.M. I would turn around and drive home, sleep for a few hours and do it all again.
Marcus: It was kind of crazy because looking back I think I really must’ve wanted it. We actually had a local university that had a computer science degree, but it was not a good program and people coming out of it weren’t getting jobs. They were becoming help desk folks. I wanted to be a software engineer. So I invested the time it took to go to a school that had the degree that I wanted.
Arsalan: So, that’s interesting. One question that keeps coming up is whether you really need a degree to become a software developer and the opinion is divided on that. But you are certainly motivated. Were you motivated by the ability to get a good job or was it that you thought you needed to get a degree to learn the skills that you needed? Which one was that?
Marcus: It was actually both. But, I’ll be honest with you. I dropped out after almost three and a half years because it turns out that while working two jobs and driving 200 miles per day and trying to do all of your homework, something’s got to give. By the time I reach my junior year, we had three children. So, it was pretty obvious that the thing that had to give was school. I was lucky enough that I had gone far enough to allow me to get an entry-level job programming for a local nonprofit who needed a database system maintained.
Marcus: When I started, what I realized was a couple of things. First, there were people who had spent a tremendous amount of time learning how to teach computer science topics. I saw a divide between my friends and I. We called ourselves pseudo-hackers because we would buy a book on C or Pointers and we would try to work through them. But I realized that I would never really bridge the gap, I thought, to be a serious engineer unless I got some formal schooling. So I always had my eye on getting my degree. In fact, I always wanted to go on to MIT, but that didn’t happen.
Marcus: Once I had kids and needed to support a family, things changed and I became much more practical. So by the time I left college, dropped out and got a job, I was really thankful that I wasn’t getting a minimum wage job. I believe I got a job for around eight dollars an hour, which was a couple dollars more than minimum wage at the time. So for me it was twofold. It was the idea of wanting to be serious about and really good at my craft and also the idea of earning a good wage.
Arsalan: So you never finish the degree?
Marcus: I wish I could say that I did, but I didn’t.
Arsalan: that’s fine. I just want to know if you thought later on in your life when you worked for many years, do you think that you used the knowledge you gained through those courses?
Marcus: Oh, yes absolutely. The fundamental classes in this program had a C-based curriculum, so you took three terms of C, which was a whole year. You took Assembly language, which was fine. You took C++. Then you got to be exposed to a whole bunch of interesting languages, which were things like Ada and Fourth and FORTRAN. Even though maybe your audience is it using a lot of those languages now, every language brings its own metaphors and its own mindset. As we went along, we also learned a little Python and Java, and things like that.
Marcus: What I realized was that college was fundamentally where I learned how to take on a new language and bring it in and learn it. I don’t you C very much now and I never used it very much professionally. But college is where I learned how to learn programming languages if that makes sense.
Arsalan: Yes, that does make sense. People have different ways of learning. Some people learn by reading books. Some people don’t have the discipline needed for books and need in-person training. Some people go the route of blog posts. And some people really learned well in class environments. I’m one of those people. I love being in the classroom and having to interact with a knowledgeable teacher and that has helped me personally.
Arsalan: A lot of people will say that when you go to college while you learn the fundamentals and technology, you don’t learn best practices. You’re not learning how the world works. So when you get your first job and you start working, it’s a huge shock because you kind of have the tools but you need to almost retool yourself.
Marcus: I would say that it’s more than almost. From someone who has hired dozens if not 100 or so people, I was the primary hiring manager at this global company that I worked at for 14 years, we didn’t expect people who we had hired right out of college to know anything about version control or software development lifecycle processes. They had a junior or senior project where they had to create a sizable piece of work, sometimes in a team. But the reality was that we knew something that they didn’t. They thought their education had just ended. We realize that their education had just begun.
Marcus: So we fully expected over the next 1 to 2 years that their primary goal was going to be learning the systems, not even from a technical perspective, but from practices and habits, the software development cycle, no matter what methodology we used, all of these things we were going to teach them. Because while they thought they were ready to come in and get started, we just kind of smiled and said: “Sure, let’s bring you in and get you started.” Then we put them on a 1 to 2-year training program where they would become not just a coder but a professional software engineer. That’s the way we thought of it.
Arsalan: That’s interesting, a 1 to 2-year training program. I have not heard of this kind of a training program before. What is it like?
Marcus: Well, it was a bit informal at first. At first it was really a matter of the department managers and team leads huddling together and saying “you know, the people were hiring from college are really bright, but it takes one to two years before we can really hand them a large piece of work and they know how to organize themselves, they become proficient with our internal processing tools, and they understand what’s expected of their role versus the roles that sit on either side of them like business analysis or quality assurance.
Marcus: It wasn’t that they didn’t understand the technology or they couldn’t write a good loop, or optimize an algorithm. A lot of times it was that they lacked the professionalism. They would come in late, dress inappropriately, and didn’t know how to conduct themselves in meetings. Maybe that sounds terrible, but there is a really important part about being or software professional, and that’s the professional aspect.
Marcus: So it started with us as an internal organization, realizing that we could hire raw talent straight out of college, but we couldn’t just throw them on the team and never talk to them again and assume that they would just get it. What we had to do was give them a structured 1 to 2 year plan. So, at first, people didn’t really even know that they were in training. They just knew that in the first year or two they didn’t get the same type of projects that they got in years two, three and four in their careers.
Marcus: Over time we formalize that into a training program that became more intentional and it was the team leads job, who is also the person doing interviewing and hiring because they were going to have that person work for them, to make sure that person received the training they needed and to partner them up with other people in the company who were at similar levels or possibly get them a mentor.
Arsalan: Okay, I want to ask you this question about your first couple of jobs as a software developer because I think you told me that you received eight dollars an hour and that was probably not exactly software development. Eventually, then you did get your first programming job. How did you get it?
Marcus: The first one that I got was an IT job, so software development was a part of my job, as well as setting up a computer and fixing a printer. Small companies will often times have one IT person, and so that’s what I was. This was a company that was about 60 people and a nonprofit. So I was expected to split my time between fixing printers, setting up PCs, replacing mice and keyboards, troubleshooting the network, and writing and maintaining the student database system which was written in FoxPro. So, I do think the software development was a part of my job, but it certainly wasn’t all of it.
Marcus: After I left that job, I got a job at this global company that had an IT group and it had a small programming department. I think I was the eighth person in that programming department. So I joined a group of people whose job it was to write the software. At the time our job also involved deploying the software, maintaining the servers, maintaining the databases, designing the database, delivering the software out to the manufacturing entities, and everything. If it had something to do with the software, we were the team involved and everybody did everything on the team. There was not a lot of specialization, which I think was really beneficial because we could pull in people as we needed to. I think I started that job at $8.22 an hour in 1996, which I thought was a pretty good deal at the time.
Arsalan: So, now you’re working and doing software development. You’re doing other types of support work. Was it hard for you to be accepted as a valuable productive member of your organization?
Marcus: I think I stood in my way of being accepted. For example, I had dropped out of school as I had mentioned. Many of the people there had come from the same school and had received bachelor’s degrees. Then there was a group of people who were from India and who were very good at their jobs at work there. They all had master’s degrees and some of them even had doctorates. I don’t think that they were judgmental towards me as much as I was defensive and worried that I would not be accepted. They looked at me and said that if you have good ideas and work hard, if you’re trainable and humble, then will accept you. And I did. Those things weren’t said overtly, but those were the values that I felt and I got along great with everybody.
Marcus: I always felt as though I had something to prove for the first one to two years, and this was a very informal department at the beginning. So, I was getting projects of all sizes right from the get-go because there weren’t any formal training programs. So I was really working hard to show myself that I was smart enough to be with this group.
Marcus: Honestly, at the time, and I think that this still happens today in computer science and other engineering degrees, when you come out of school you think it’s all about your brain and your smarts and it’s the smarts that people compare. It’s how great of an algorithm you can write. There’s really a hierarchy based on who’s smarter from what I’ve seen. Really, organizations, especially in academia, we as a group of software engineers tend to really value intellect. I always doubted my intellect, but I always try to make up for it with raw desire and sweat, and just putting in the work. That has usually worked pretty well for me.
Arsalan: So, your experiences have been really interesting because you started working at this company that we alluded to earlier, and you were really struggling. After a while, you stuck with it and somehow managed to get past that and you stayed with that company. That’s a very interesting story and I want to talk a little bit about that. Was that your second job, your third job, or was that your first job? Which job was that?
Marcus: That was my second job.
Arsalan: How did you get the second job?
Marcus: I got that job when I had been laid off from the first job and a friend of mine who had worked at this other company and I were chatting and he suggested that I apply over there. I mentioned that I didn’t have a degree. He said that he put in a good word for me. I went to go to the interview. I didn’t realize it at the time, but when after the interview they send you home with a box of about 25 books to read, that’s a pretty good sign. They did and I went home and devoured them and came back for my second interview and showed that I had read them and was trying. It was really through a personal referral that I got the second job.
Arsalan: So, personal connections are really important.
Marcus: Really important.
Arsalan: For everyone who’s listing right now who wants to get their first, second, or third job, the best way to do that is get to know people inside or outside the industry because software development is one of those things where everybody, even unrelated industries, need software developers. It’s good to know people. The best way to know people is, what do you say Marcus?
Marcus: Well for me, at the time, it went back to college. So, the people I knew for those with whom I’dI’ve gone to school with. We were not only friends but they respected me because not only did I do the work, but I worked hard and all these other things. So, if we circle around, I think one of the benefits of going to college is you meet other people in your field and I still have relationships with many of them, teachers, faculty, and students and I really benefited greatly from those relationships.
Marcus: These days I think things might be a bit different, although I still think college is a great place to meet future peers, but obviously conferences, meet-ups, and all kinds of places where you can rub shoulders with people and get to know them. Online communities for me have been a bit harder to form deep, personal trusted relationships with, and that’s what you do in college. Or at least that’s what I did in college.
Arsalan: All right, let’s get back to your story, Marcus. You started this job and got a referral and you were hired as a programmer, I’m assuming?
Marcus: Junior programmer, yes.
Arsalan: Junior programmer, an excellent place to start because there are few expectations and you should be able to just walk in and hopefully ask questions from literally anybody else.
Marcus: I did and it was in a programming language that I’ve never used before and on a database that I’ve never used before. So I was absolutely free to ask questions and it was a great environment to learn in. Even after I made big mistakes, they just chalked that up to learning. They were wise enough to only give me enough of the right size things to work on to really help me progress through it.
Arsalan: But, you ran into trouble. Something happened that caused them to give you warnings. Walk me through that. What happened?
Marcus: Being a small IT department in a manufacturing company, one of the things we were tasked with was also doing phone support. So when a plant would call and have a problem with the ERP system, that the enterprise resource planning system that we had built that ran the manufacturing plant, someone on the software team had to answer that. I kind of liked it and enjoyed it, but not as much is programming.
Marcus: It made me feel helpful, smart, and rewarded to be the expert on the other end of the phone. So over a period of months, I learned the system and I became more proficient in it. My phone would ring more and more because plant folks would realize that I was an energetic young guy who didn’t mind answering their questions.
Marcus: So, over time, all that phone time really killed my productivity. I happen to be assigned to a large project and it was my first really complicated project that was going to take an estimated three months. I hadn’t been entirely honest with my boss about how I was using my time and he didn’t realize how much time I was spending on helpdesk items.
Marcus: Over time, that project started to languish from the large one and it was because I was spending so much time helping the plant. My boss told me on numerous occasions to stop because at that time we actually had a helpdesk person and it would be their job and I was to just refer calls over to that other person.
Marcus: I didn’t think that other person did a very good job so secretly; I just kept taking the calls and being helpful. Then I started staying late and putting in overtime to get this other project done. Well, when your phone rings once or twice an hour. It really kills your concentration and your flow time when you’re trying to think about a hard problem. So that also destroyed my ability to think deeply about this large project I was given.
Marcus: Three months came around and I really hadn’t made any progress at all. At that point, I couldn’t hide it anymore. So my boss decided that we really needed to talk about this. He told me in no uncertain terms that I needed to stop doing what I was doing and focus on the work in front of me and after this project. If I still love being on the phone more than programming, they would just move me over to helpdesk. I didn’t like that at all because I wanted to be an engineer. But I also really like to help people.
Marcus: The reality was that I had really developed a crummy attitude at about that time. I felt like my bosses being unappreciative about me. I wanted to be helpful and felt that I should be able to do both. So I got a bad attitude and a hard heart towards him. As he would discipline me and tell me that I needed to stop and focus on this other thing, I would always tell him with my mouth that I was going to do that, but when the moment came, I couldn’t just not pick up the phone and be helpful.
Marcus: It didn’t take long before he realized that his informal attempts at correcting me weren’t helping me. So we had a correction event where I got a written warning and called into his boss’ office where we talked about things. Actually, I think it was a verbal warning, which is weird because they still write it down on a piece of paper and have you sign it. The long and short of it is I would love to sit here and say to you that somehow got through to me, but it didn’t.
Marcus: We had to go another two weeks before I got a written warning and by then I was just really frustrated. I was really thinking that my boss and upper management were being unfair and maybe I should start complaining about him and I just thought that I was really being abused, which is crazy now that I think about it in hindsight.
Marcus: It finally got so bad that frankly on the second warning my boss and his boss sat down with me and gave me a copy of the employee handbook and let me know that if I received a written third warning that it would be an automatic termination and I was now two weeks from that. They didn’t understand why I wouldn’t change my behavior. They didn’t think that I wanted to be in the position that I was in given my behavior although they knew I could do the job.
Marcus: So they told me that it appeared that two weeks, we would meet again and I would likely be fired. They gave me a piece of paper that said that. They said that if in two weeks. They didn’t see a radical change in my behavior. They would fire me and it would be as though I had quit because they had given me every opportunity to change.
Marcus: In the meantime, at the end of every day, I had to fill out a time and take it down to my boss’ cube and review it with him. If at any time he looked at my timesheet and he felt that it wasn’t honest or I hadn’t been working on the right things, they would’ve let me go right then and called that a termination for cause because they bent over backward trying to get through to me.
Marcus: I signed a piece of paper and left and went out to my car and it finally hit me. I was going to lose my job. I had three kids at home and a wife and I was the sole breadwinner. We lived far away from family in a small town and there weren’t other jobs to be had. This is literally the only programming job in our town. I just kind of broke down and realized at that point that I didn’t want to lose that job. I had been very arrogant and had a bad attitude and I was hardhearted. I wanted to change.
Marcus: I composed myself, went in and finished out the rest of my day and went back in the next day with an entirely new attitude. I had a mindset shift.
Marcus: Whenever someone stopped me in the hall and wanted to chat, I declined because I was busy and had work to do. When my phone rang and people asked for help, I referred them to the help desk.
Marcus: Every day I had to fill out timesheet and walk it to my boss’ cubicle and do the corporate walk of shame, subject myself to his authority and wonder every day. If I had done a good enough job that day to keep my job. Two weeks went by and I had. Everything was not great, but they had noticed an improvement. I thought they were going to say that it was all over and I could go back to normal, but they wisely didn’t. They said, “let’s try it for another two weeks.” The same thing happened. They said, “were going on a month. This is pretty good, let’s try another month.” I did it for another whole month.
Marcus: At that point, they said that it had been two months and that it appeared I was being consistent and I really had a change of heart, I had made really good progress on the project and it was coming along well and was provable. So they took me off of the very short leash they had on. They put me on probation and had me meet with my boss once a week as normal for the next three months.
Marcus: During the next three months I really applied myself and had really done well. I was removed from probation.
Marcus: About eight months later when my team lead was promoted to department manager, I was completely shocked that I was the person he chose to take his job. So, I was able to move up within the organization from there.
Marcus: The experience made me realize that the value and goal of correction are to change behavior. It’s to give someone a chance to have a mindset and an emotional shift. It’s not just about filling out forms or going through the motions. So, needless to say, as someone whose life is changed because of an employee correction process, I’m a darn big fan of employee correction processes and formal processes like that because I know that they work and they worked for me.
Arsalan: Yes, what an incredible story. What I like about this is that your bosses certainly had empathy towards you. What a lot of companies would do is hold grudges and hold an internal evaluation, and then at the time of your yearly evaluation or some other random time, they would just fire you because in America and many other countries, you are not obligated to give employees any notices. You can just let people go, but maybe it’s different in your case.
Marcus: It’s not. No, they absolutely could’ve. I think you’re right. Not only did they have empathy, but as I matured and I began managing people, I realized how much time it took them. To meet with somebody at the end of every shift, to go through a timesheet and be consistent and fair, they were absolutely fair in a way that blew me away. I never had a boss who was so fair and just with me. That meant being honest with both the good and the bad.
Marcus: I think you’re right. They did have empathy and they really wanted me to improve, but they were not willing to just change the rules for me. They didn’t want to in an emotional way like wanting to be my friends. They weren’t willing to do whatever it takes to make me stay. They wanted me to fit in here, do the work and make that decision myself.
Arsalan: That must’ve been incredibly hard for you to go through that. As I was listening to you talking about the process, I can imagine the emotional drain you must of felt. So, you’ve seen yourself go through these strains, but I’m sure you’ve seen others. Do you think that we are doing a good job as an industry of dealing with people coming in and a whole lot of them are going through these types of issues, whether they are psychological, emotional, technical, or personality issues?
Arsalan: A lot of them, like you in the past, are good workers. They have good ability, but maybe they have trouble fitting in. Maybe it’s a matter of changing themselves in a way to be productive or affecting change. There are lots of things going on in our minds and in boardroom meetings and so on. Do you think as an industry were doing a good job of bringing people on board and making them feel comfortable? Or, on the flipside, do you think people are struggling like yourself? Do you think you are a one off case?
Marcus: I think were better than we were 20 years ago. But to be honest, as Bruce Tulgan, one of my favorite authors likes to write, there’s really an under management epidemic occurring in a lot of different knowledge worker circles.
Marcus: I see it terribly in software engineering. I see it because people who lead software engineering groups usually think that it’s their technical skills that need to stay sharp, like their architecture or software code review or agile process skills that they really have to improve to manage people.
Marcus: But it’s not. It’s really their human relationship skills. It’s their ability to give clear feedback and the courage it takes to have crucial conversations when the stakes are high. These sorts of interpersonal skills aren’t nearly valued enough in our industry.
Marcus: Unfortunately, I think there’s a lot of programmers who are blindsided when they find out their boss does not think they’re doing a good job. Maybe that’s an annual evaluation. Maybe it’s the day they get fired. Maybe it’s the day they thought they were going to get a raise and the raise is much smaller. I also think that we have a lot of team lead to get promoted and are asked to do two jobs.
Marcus: They asked us to continue being a contributing software engineer on the team and to manage this group of six people, and by the way, management is just an overhead. So they must try to minimize that because where you’re really valuable is software engineering. I think that’s of very wrong way to approach leadership.
Marcus: So I think as an industry, we’ve got some player-coach titles and I called the team lead one as a player-coach because 40 or 50 years ago, you would find a basketball coach in the NBA who was also the best player. So he would have to coach and still play the game. Nobody does that anymore, and sports and that’s because the paradigm doesn’t work. But in software engineering, we still think the player-coach role is really a great role for people. But I think it leads to poor performance during the game and poor performance when coaching. So, yes, I think there really is an epidemic of poor managers in software development.
Arsalan: That is so true. Management is hard. The problem is that in a lot of organizations, we are always trying to cut costs. So, one way of doing that is to hire a bunch of junior developers. The idea is that if you have two junior developers for the cost of one senior developer, you get twice as much work done, which is a complete fallacy.
Marcus: Right. You can get a lot of wrong work done. What I actually see on top of that is that then they will hire one senior developer and have them lead for junior people while also being responsible to write all this code as well.
Arsalan: Right, and that’s one of the problems we run into when we’re trying to institute mentorship into an organization. These two senior people will now become mentors for junior people who come in. However, they still have to do eight hours per day of this work that they’re supposed to do. This is not part of their evaluation. They’re not getting any raises for it. Every time a junior person needs some sort of guidance or mentorship approaches them, it encroaches on their time and time with their family because now they’re going to be sitting and spending some time helping somebody else. So if you really want this idea of people helping other people within an organization, we would go ahead and compensate or account for that time.
Arsalan: We are coming to the end of this episode. What’s the best advice you can give software shops who are looking to hire new developers?
Marcus: I think creating a structured on boarding process. I love the idea of assigning a mentor. I think that mentor needs to be a formal role or a formal part of their role where you expect less code to be delivered by them because they’re going to be expected to take time with those new folks. I think having weekly one-on-one meetings with each developer where you create deep, trusted, bidirectional relationships with them. You need their feedback to create the kind of environment that they are going to thrive in. They need feedback every day to improve. Don’t just at them in the corner and assume they’re going to figure it all out. Get down and really interact with them.
Arsalan: Quickly, what’s your best advice for people wanting to be developers or new developers?
Marcus: It’s a great career. I love software development. Keep practicing. Just keep trying. Yes, there are a lot of people out there who are better than you. There are a lot of people out there who are better than me, but start with the fundamentals and learn hard things because a lot of it is really hard things. Build your way up to be consistent. Learn little programs every day. Try to learn something new each day. Don’t be attracted by all the new, flashy stuff all the time. I think that starting with C, even if you’re going to be a web developer, is a great place to start because it forces you to learn pointer math and a lot of internals that web languages just abstract away from you, but in the end, become really important for your career.
Arsalan: It was really inspirational for me to hear about your story and how you struggled and how you overcame those struggles. So, this was a fantastic interview. Before we wrap up, I wanted to give you the opportunity to talk about some of the things you’re doing right now. I know you have a service that you offer. What are you working on these days?
Marcus: I have a mailing list where I’m doing a lot of writing, and so I encourage folks, if they’re interested in leading developers or maybe someday hope to, to sign up for my list at MarcusBlankenship.com. I have a free 5-day Become a Better Manager crash course that I’ve recently been revamping and it’s out there as well. I also do workshops from time to time. So I announce those to my list. I’ve got something that I’m working on for later this year that I’m not ready to reveal, but it’s kind of the culmination of the last years of work and thought. So, when the time is right, I’ll let you know.
Arsalan: Great, all that information will be included in the show notes. Go check it out. Once again I want to thank Marcus. Check out Marcus’s website and sign up for his mailing list, if you’re interested in becoming a manager. Thank you, Marcus.
Marcus: Thank you.
Thanks for Listening!
If you found this episode useful, please go ahead and share it with your friends and family. You can also listen directly and give your feedback on the website.