CORECURSIVE #084

The Unfulfilled Engineer

Disillusionment at Work

The Unfulfilled Engineer

Nothing good comes from being insecure about your worth, especially at your job. That’s what today’s episode is about. That’s what today’s guest is here to discuss.

It’s a slow burn, but if you listen to the end, I think you will value yourself more professionally. My Guest is Don Mckay. Someone longtime listeners will undoubtedly know.

Transcript

Note: This podcast is designed to be heard. If you are able, we strongly encourage you to listen to the audio, which includes emphasis that’s not on the page

Adam: Hi, this is CoRecursive, and I’m Adam Gordon Bell. Each episode is the story of a piece of software being built.

Color Blind

Adam: I remember being asked if I could make that yellow more orange, make it more similar to the one over here. This was at a web design company. This was early in my career, and Ella was the person asking. She was the designer, and she would create these web pages. So she mocked them up in Photoshop, and then I would have to recreate that in html. That was part of my job, and she would ask me for my input on what this looked like, or could we try a different color here? Or I would try to recreate something she did in Photoshop, in html, and she would say like, “Oh, can we change this color to be more like that?” And it always made me panic, just panicked about what to say because I was afraid to tell them I was colorblind, right? I’m red-green colorblind.

10% of men are. I guess… And maybe most people would just tell people that, but I didn’t. I was afraid. I felt lucky to have the job, I felt out of my depth, and I just felt insecure and that what would I be doing in this job where I’m building websites and where the graphic designer and the various people were always talking about colors and palettes, and I didn’t understand that at all. I just felt like I had to keep to myself the fact that I saw colors different than everybody else. If they knew that, then I would be let go or something, right? What is he doing building these websites if he can’t even see colors the way we see colors?

But it was all false. I guess what I should have learned back then, and that I’ve learned since, is I should have just told them. I should have just told them I was red-green colorblind. The thing that I’ve learned is that nothing good comes from being insecure about your worth, especially at your job. That’s what today’s episode is about. That’s what today’s guest is here to discuss. It’s a slow burn, but if you listen to the end, I think that you will value yourself more in your professional life. And the guest I have here today is someone longtime listeners will certainly know.

Year: 2006

Adam: Can you tell me who you are and what you do?

Don: So, my name is Donald McKay and I’m a senior software developer. I’ve been doing it since 2006.

Adam: Back in 2006, Don finished a college program in computer programming in Peterborough, Ontario Canada, a city of about a hundred thousand people. He had won a bunch of awards

Don: And the awards were sponsored by various companies, and there was some big ones. I won the Bell Innovation Award for my sixth semester project, and I won another award for top programmer.

Adam: Don graduated, had convocation, and he started job hunting. He applied to a place nearby.

Don: They did a PHP development, and it was some kind of content management PHP system. My sixth semester project was PHP. So, I went in there and I said, “Hey, I won the Bell Innovation Award for my PHP content management system that I built from the ground up.” And they were like, “Yeah, sounds good. We’ll call you.” And they didn’t call me for a year. So, I don’t know what their requirements were for somebody that was going on an entry level position at a college, but apparently winning an award for a system that deals exactly with what their product is was not good enough for them. They were looking for somebody else.

Initech

Adam: Don’s next option might have been applying in Toronto or Ottawa, and then thinking about moving his life, but there were a couple places left to apply in town, including this place called Initech, whose name we’ve switched for reasons that will become apparent. Don knew Initech because he had a friend who worked there, and that friend had put in the good word for him.

Don: This particular person also made a reference to somebody else who they ended up firing, so I don’t know how much weight his opinion carried anymore by the time it got to me. Like, “Hey, what do you think? Should we hire this guy?” It’s like, “Yeah.” “Well, you did say that about the last guy, and it turned out he wasn’t a good fit.”

Adam: Yeah, you did give a great reference to Steve, the murderer.

Don: Yeah. And he murdered some people. Oh, I don’t know if we want to… In fact, I don’t even know why I’m asking you.

College Award Ceremony

Adam: Meanwhile, Don had a college award ceremony to attend. It took place in the summer in the late morning a month after convocation.

Don: You get a little letter that says that you won this award, and the ceremony will be in this place at this time. And you go there and you just walk up and accept the award, and a handshake and they do some pictures for local media. And the awards were in a lecture room, a lecture hall in the college. They just had everybody that was receiving one there. And there was, yeah, a crowd, probably just parents. I don’t think anyone was stopping by and being like, I don’t know, checking out the awards. “I don’t know anybody there, but let me take a seat.” I don’t think anyone was doing that.

Adam: One of the awards Don one was sponsored by Initech.

Don: Yes. I still have the plaque somewhere. And they’ve been sponsoring it for a while. I wasn’t the first one to win it. I don’t know how long they did it for.

Adam: What was that one for?

Don: It was the top programmer, the student that had the highest marks in the programming courses. So, exempting things like general education and electives. When I accepted the award, I was invited to go to lunch with the CEO and the HR manager. I think they both went. So, they said, “Hey, why don’t we go get some lunch?” I was like, “Sure. Yeah. No, that’s sounds like a good idea.”

Adam: Where was lunch?

Don: Hot Belly Mamas downtown. It’s a local restaurant. I don’t know if there was something to it. I think that they just liked Hot Belly Mamas. It was a pretty good place, but they had some good swoop potato fries and good seafood dishes as well. So, we went down to Hot Belly Mamas and I sat down and talked a little bit about the company. And they did make me a job offer. They said, “We’re technically under a hiring freeze, but we’re going to make an exception. However, the only position that we could offer you would be quality assurance.” And I was like, “Yeah, sounds good to me.”

Adam: Don left there pretty excited.

Don: I didn’t know how to do QA. I went in expecting that I would move into a development. I just had to do some time as QA until position would be available.

Adam: And did you phone your mom? Or I don’t know who you phone and say, “I got it.”

Don: Yeah. No, I phone my mom, and I was like, “I already have a job,” which was… It was good. It was nice.

Adam: And then how long till you started?

Don: It was quick. It was the next Monday.

Adam: Oh, wow.

Don: Yeah. No, they rushed me in there.

Adam: The only thing disappointing was the pay.

Don: The equivalent of maybe somebody who’d be working fast food flipping burgers or something, right? This is pretty low, but I always viewed it as a place where I could progress. You get in there, you work on the bottom level and you work your way up.

First Day

Adam: Tell me about the first day. What did you-

Don: It was in the summer, and I remember it being super hot outside, but it was air conditioned on the inside, so that was nice. They gave me a small desk beside a couple other people in a bullpen, and I didn’t spend any time doing any actual work for the first little while. I spent most of the first day in a meeting with a product manager and she went over the whole product with me with this giant binder in a meeting room in a conference and kind of clicked through the product that we were going to be working on and kind of just showed me an overall, this is what it does, this is how it works from a client perspective. And I’m not going to remember half this stuff. Oh, that’s fine. You’ll have this binder. You can look it up anytime you want. And I still have that binder.

Adam: What the product was was a learning management system. Think Blackboard, the software that you would use to sign up for classes, get your grades, and see your transcript, but it was aimed at corporate internal trainings.

Don: I think I started testing certain tasks, small tasks that they got for me just to test some things, and I found some small bugs. So, I think it didn’t take me too long that I started poking around the code. So when I tested something, I started looking in the code to see if I could find what the problem was, and then I just fixed it. I started fixing the bugs that I was finding. And I worked with another developer there, and he looked through my code and stuff and he would commit it on my behalf for a while until I got permission to just to do it on my own, it was like that for a bit, until I eventually walked into my manager’s office and I was like, “Hey, look, I’m fixing bugs and doing development. Maybe I should be a developer.”

Adam: Was there any concern, I don’t know, that you wouldn’t be able to be able to do it or it would be too complex?

Don: The way that I viewed it is they had a lot of senior developers and developers that were layered longer than I was, and they were handling a lot of the more complex, complicated issues, but there were a lot of things that were falling through the cracks, and I was more than comfortable just picking those up and fixing them until I learned more about the product. So, I was like, “Yeah. No, I’ll be a developer, but I’ll be a junior developer. So, I’ll just do the things that are maybe tedious or repetitive or easy that the senior developers shouldn’t have to waste their time on.”

Mr. Bug Fixer

Adam: That allowed the other developers to work on more important things. So, that meant all the devs were glad to have Don on the team. He was Mr. Bug Fixer. But he didn’t understand all the codes, so he had to chase down the more experienced devs and ask them questions. The standard way to do this was to write an email, but Don had his own method.

Don: I found it just a lot more effective to walk over to somebody’s desk. You read the room, right? If they’re in the zone, you’re like, I’m going to come back later. You don’t interrupt them. But if it looks like they might have a minute, and you’re like, “Hey, I have a problem. I’m working on this thing. Do you have a minute?” And that’s when you realize everybody’s just barely holding it together.

Adam: Explain.

Don: Because the product was large, nobody knew everything. Everyone was siloed into a particular piece or area. So if I went over to somebody and was like, “Hey, I’m working on this area of the system, how does this work?” And they’d be like, “I don’t know. You got to go talk to Bill or something.” I was like, “Okay, what about Bill?” “Well, he’s on vacation. He’s not going to be back for a couple weeks.” “Does anybody know this works?” It’s like, “Well, you could talk to the project manager that might know how we use it according to the manuals.” I’m like, well, that doesn’t help me. I have a technical code question. Yeah, no, you’re going to have to wait for Bill. So, you wait for Bill, and then you go and you talk to Bill and he’s like, “Yeah. I handle all the issues on this particular piece. In fact, just let me do it.” That’s usually what it would end up being. “I have a problem with this feature, and I think that I know what’s wrong with it. Can you look?” And he was like, “No, just let me do it.”

Adam: There was territory.

Don: Yeah, very much so. And it made it really hard for anybody else to learn because they also got very offended if something was wrong with their particular piece of the ecosystem. So, you went in and said, “Hey, I have a problem with messages.” And they would be like, “Well, I built messages.” I’m like, “Yeah, I think there’s a bug with it.” It’s like, “No, it’s working as designed.” You’d be like, well, don’t get defensive here. I’m not coming in here trying to ruin your day or saying that you’re a bad programmer or something. I mean, there’s a bug with it. And yeah, so it made a lot harder to learn. I just found that a lot of people’s backs were up a lot of the time.

School Was Useless

Adam: What did you learn from those first couple months about being a software developer?

Don: I think what I learned the most was that everything that I had been taught in school was useless, not useless in the general sense, but useless in this particular company, because I learned a lot about .NET because it was new. So, C# .NET was like a brand new course when I took it in college and there was absolutely no .NET in this entire product. We only briefly had the shortest courses in things like JavaScript. So everything that I had learned in school was like, it’s fun and great, but I don’t see us using that.

Purple Mango

Adam: After a year and a half of bug fixing, Don got pulled onto a special project, the Purple Mango implementation.

Don: So, Purple Mango is a telecom company. And Initech makes a learning software, so Purple Mango would take training out to all of its people using Initech software. So, they wanted to launch their training site. And Purple Mango, being a telecom, had a lot of specific things that they wanted in terms of how people signed up, what kinds of fields they would fill out when they signed up, what would be part of their profile, the branding of it, what it appeared, what it looked like when they signed up or logged in. There were a lot of specific customizations to how Purple Mango wanted the user experience to be.

Adam: Because they have all these cellphone stores. You go to the mall, you see a Purple Mango stand and they’re selling things.

Don: And they have the affiliates too, so they’re not official purple mango stores, but they might be just a place that sells cell phones in the mall or a kiosk, right?

Adam: This is a problem because Initech is less than 30 people at this time, total employees, and Purple Mango is a huge client. So, what do you do?

Don: Well, if you’re in Initech, you say that, yeah, we can go live in two weeks, no problem. And then after you tell Purple Mango that, you come to the developers and you said, “Hey, good news guys. We signed Purple Mango.” And we’re like, “That’s great. That’s great news.” “And also they have this laundry list of customizations that need to be done, and they launched in two weeks.” We’re like, “Whoa, hold on a second.” It’s like, “Oh, and also, we cashed the check, so we have to deliver contractually by two weeks”. It’s like, okay, so let’s look at these changes. And it turns out that some of them step outside of just UX. Some of them are actual functionality that doesn’t exist.

Adam: Yeah. I always think about it’s a problem to bring on a customer that’s so large that they dwarf your other customers, right? Because all of a sudden… You don’t mean to be a custom development shop, but all of a sudden that customer has you in a certain place.

Don: They’re very influential. So, my manager came up to us, me and the new guy that was more UX focused, and we used to sit beside each other. And he said, “We’re launching purple mango in two weeks and we need all these customizations done. Some other of the developers are doing some of the features, but we need somebody to do specifically the new user signup stuff. The signup pages have to be all completed, and we have these custom fields and stuff that need to be integrated. And we only have two weeks, so if you guys could come in on the weekend, I’ll give you time in-lieu. And we were like, okay, “Well, I guess that’s great. We’ll spend two days, and then we’ll get three days off. Sounds like a good deal.

Adam: But the pressure was on and the timeline was very tight.

Don: The implication was that we would be host, mot that we would get fired, right? That was never the thing. It would be like, we would be very disappointed and you’ll lose your job that it wasn’t ever that serious, but it was. It’ll be very bad for the company. And we were already kind of on the edge of not getting raises for two years, so we want the company to do well in hopes that maybe we might get compensated for it at some point.

Adam: I mean, what did not doing well mean to you? I mean, I guess it meant that you wouldn’t get a raise.

Don: Or that the company might be unstable. You want some job security. And you figure if the company’s healthy and doing well, then you’ll have some of that security. And if they can launch this… Purple Mango is a big client, right? If they could launch that, then it would rocket the company to greater heights. And the perception was that you’d be along on the ride. You’re in on the ground floor, right? So, you were there before the company grew to be huge. Because I think at this point, the company’s only maybe 30 people. It’s not very large, and you want to be in on the ground floor so you can ride it to the top.

Adam: Were you stressed?

Don: Yeah. I mean, maybe I was younger and it was easier to do when I was younger, but we were all friends so kind of hanging out, working on the weekend with your friends is not that big of a deal. And keep in mind, this didn’t happen a lot at the time, so this is the first time that I’d been asked to work on a weekend, so it was a novel thing. And we were getting compensated, so yeah, it was fine.

Adam: So, it was fun? You guys were wheeling around in your chairs, just you two there being wee and coding things?

Don: Well, there were some other people there too. Lots of people worked the weekends at Initech for various reasons, which might have been a warning sign.

Adam: It’s a warning sign because resolving tight deadlines by working on the weekend only work so much before it turns into a death march. But Don and his coworker get the login and account creation customizations in place. And presumably at the same time other devs are working on other features and tweaks, Purple Mango launches. There was no celebratory event though.

Don: No, it was just relief. You’re just glad that nothing went wrong and that you don’t have to work weekends anymore because you’re running on fumes by the time it’s over.

Adam: What did you learn from this experience?

Don: I learned that coming in on weekends isn’t actually fun, and that time in lieu is an illusion. You always ask for money. You don’t ask for time in lieu because it’s hard to get it. When you’re part of the resources that are oversubscribed. They don’t necessarily like it for you just to take three days off. You have to get your time approved to take vacation. And the company was small and didn’t really like people taking a lot of vacation off.

Cowboy Coding

Adam: Discouraged, vacation taking was a problem for Don. He worked hard, but he had a busy life outside of work as well. Near him sat, Cecil, the most senior dev who had a whole different philosophy on things.

Don: Cecil’s a cowboy. Cecil wants to be in the thick of it. When things are burning down. That’s where he enjoys being. So, he likes being the go-to guy when things are exploding. Well, he used to brag all the time about writing something in a weekend and sleeping at the office. It was a point of pride. And he would say that he wrote an entire feature in a day. I would say that’s not something to be proud of. How many problems are with it? And he’d be like zero, it works according to the spec. And his joke would always be the spec was a blank page, so it would always worked according to the spec. And I’m like, yeah, okay. All right.

The Cruise and Overtime

Adam: The blank specs, the cut corners, the overnight hardcore implementation, that just wasn’t Don’s style. He left that to the Cecils of the world who would fight fires and occasionally cause them. Don wasn’t going to be sleeping on the office floor. He focused on the meticulous day-to-day work that needed to be done. He was a planner, and this paid off. He eventually became a senior developer, and then eventually a team lead. And then an opportunity came up for his approach to really shine.

Don: It just came in over email, and it was like to all the developers. And it was by our manager. And he just said something to the effect of, there’s a lot of work that we have to do, and we’re getting bogged down. If anybody is interested in staying late or working extra hours, keep track of it on your time sheets and we will compensate you for it at a rate of straight time. So, not time and a half, just one to one.

Adam: But you’re being paid for it. It’s not-

Don: Oh yeah, but you were being paid money for it. And then you keep track of it, and you send the HR person your overtime. There was a sheet, a format that you would fill it out in. And you would send it to her, and then it would show up on your paycheck. It was like an open call. It was not required. It was not mandatory, but if anybody wanted to, it was open to them and it was a nice way to do that.

Adam: What did you think of this when you first saw it?

Don: My initial thought was, hell no, I’m not doing that. And then I started thinking about it. I’m like, well, maybe if I did an hour in the morning and an hour at night, I just extended my days by two hours it would add up. And me and my wife were thinking of taking a cruise. And money was pretty tight as is, and I was like, this would give us a little bit of breathing room if I just stayed an hour late and came in an hour early in the mornings.

Adam: So, did you tell her about it?

Don: Yeah, no, I came home that day and I said, “It could help us, but I will be leaving a little early and I won’t be getting home until an hour later.” Luckily, I didn’t live far away from the office, so I didn’t have a commute time. My commute time was five minutes. So being an hour late is not… Then that means you’re coming home at nine o’clock or something. It was still workable from a work-life balance perspective.

Early Mornings

Adam: This idea of just work through the backlog of existing bugs, but more so it didn’t really excite any of the other developers. Cecil was not going to be working weekends and sleeping on a cot for that. Nothing was blowing up. This was just more about getting up early.

Don: A lot of the times, I started the coffee machine because I wanted some coffee. And they had that massive percolator. I would start it up so that everybody would get coffee by the time they started rolling in. And I would start the coffee machine and go to my desk and crack open an issue and start working on it. And then I would go back down to the kitchen when I figured the coffee would start to be ready and give myself a cup of it. And then at night, everybody would leave and it would just be me at my desk. A couple of the times, people shut the lights off and I’m like, “Mo, I’m still in here. Oh sorry.

Adam: Did you have to have the key code to get in and out?

Don: I didn’t know the code, but there was something to do with the security system because I was going to legitimately be the last person out. I forget what the instructions were. It was a long time ago. I didn’t need to punch anything in though.

Adam: So, how long did you have to do this for?

Don: I did it for a month and I had accrued enough money to help out with our trip that we were taking.

Adam: That’s awesome. How was the cruise?

Don: It was great. Yeah, we needed it, but it was very taxing over the month. I think I was… It wore me down every day and then by the end I was pretty burned out. And you don’t realize how much an hour in the morning, an hour at night can do to you until you’ve done it consistently for over an extended time, and then you just start, I guess you start losing your fizz. you become a flat pop.

Adam: What does that mean? What does that feel like?

Don: You don’t have enough energy to do anything after you get back from work, right? You just want to sit down and veg out, watch something, play a game. You don’t want to go anywhere. You don’t want to go out to dinner. You don’t want to go meet friends at a bar and get together with some other people. You don’t want to do anything.

Adam: Did you learn anything from this? I guess it was a positive experience.

Don: Oh yeah, I learned a lot about the product. In the hour before and the hour after everyone’s gone and nobody’s around, nobody’s talking to you, you can get a lot done. And I decided that I wouldn’t do that again, but it was worth it the one time that I did it. And they paid me, they compensated me for it. It was a good way to do it.

Globex

Adam: Unfortunately, just because Don didn’t want to work extra time, that didn’t mean he didn’t have to. One day, Don was leaving a bit late.

Don: I believe it was also Friday. And I was walking out of the office, and manager comes around the corner and he is sweating a little bit, looks a little flustered. He’s looking around, he’s looking for anybody. He’s scanning the cubicles. He’s peeking over and he’s looking for any butt in a chair that he can find, right? Unfortunately, I’m walking by at that time, and he’s like, “Oh, we have a major issue. This page is like crashing. It’s hanging people. Can you take a look at it?” And I’m like, “Okay, who is it?” Well, it’s Globex.

Adam: Globex was not a name Don wanted to hear for a very specific reason.

Don: Anybody who has worked in this industry will notice the red flags right away and will know exactly how well this project went. They wanted customizations to the product so much that they forked off of the main app and did a bunch of customizations into its very own version called the Globex branch.

Adam: There was a team of one who was full-time on this custom version of the platform

Don: And there was no oversight to his solutions. He developed them in a vacuum, and he didn’t talk to anybody. There were no planning meetings. He didn’t talk to anybody about the things that he was working on. It was just, “Here you go. Here’s all the requirements. Just make it work.” And you have your own branch to do it in, and you don’t have to worry about anybody else because it’s their own branch.

Adam: This was the type of short-term thinking, cowboy coding that Don had learned to hate. And here’s why, the Globex developer’s gone for the day, and now Don’s being cornered and he has to fix the problem. So, he heads back to his desk

Don: And my manager followed me and he was standing over my shoulder. And the CEO also wants an update.

Adam: So. Hugo and Mark, right? Mark, the owner?

Don: So, Mark finds Hugo who’s at my desk, and now they’re both at my desk watching me try and fix this problem. And I showed them what the issue was. I opened a dev tool, and I said, “Here, look at this thing. It’s like looping infinitely. It’s going to crash the browser.” They’re like, “Well, can you fix it?” And I’m like, “I don’t know what this loop is supposed to do. I just know that it’s not working. How do I fix it when I don’t know what this is supposed to do?”

Adam: But there was a way to fix it. In fact, it’s the fastest way to fix it, and it’s great when your CEO and your manager are watching over your shoulder.

Don: I think I cowboyed it. I think at this point in my career, I was trusted with being able to go into productions. I just went onto the production server. I found… It was like a… It’s an ASP file, right? I just found the ASP. It’s not compiled code. There’s no code behind, right? It’s all right there. You can just change it. So, I just loaded it up in an editor on the server and edited out the JavaScript so that it didn’t infinite loop. It did not take long to find the infinite loop. I think it took longer to fix it. I was probably there for an extra hour.

Adam: That’s not too bad.

Don: It felt like six hours because you’ve got Mark and Hugo sitting there staring at you.

Adam: Yeah. And then were they excited when you fixed it?

Don: Well, it was excited that it wasn’t breaking the page anymore, but trepidation because I didn’t know how that code was, since it wasn’t functioning properly, how it was going to break everything. They kind of went off into damage control mode. So, I didn’t get praised. It wasn’t like, “Good job.” It was like, “Okay, now I got to go call Globex and explain what the hell happened.”

Adam: It’s indicative of other problems, right? It’s like your car’s on fire and somebody puts it out, but it’s like there’s still… Got to find out why the car caught on fire.

Don: They were very much still in damage control mode. So yeah, I just went home.

Disillusionment at Work

Adam: By this time, something had started to change in Don. I know this because I worked at Initech too over some of this time period. I worked there with Don and I saw him become a bit less optimistic about everything.

Don: I got old and cynical. It happens a little bit over a long period of time. I think it’s just the constant churn of things that you can’t fix happening at all the time. So in this particular company, and I know now that it’s not like this everywhere because I’ve worked for companies that were managed a lot better and had a more healthy outlook on work. But at this particular company, there was a point where you felt like there was no getting out of it. You would never make it better. You would just keep it working, if that makes sense. We always had these ideas of what we could do to try and bring the product into a modern era, and they were not prioritized. Management wasn’t interested.

Adam: I mean, sometimes I think that you’re too bitter about this topic, because here’s what I would say, right?

Don: Yeah.

Adam: So when I worked there, I was in my twenties. I mean, Mark might have been 30. I don’t know. Nobody knew what they were doing. They were all trying to figure it out. I don’t know that I could manage that company right now.

Don: I see what you’re saying, that everybody was trying to figure it out, and of course we were all doing it because we were small and scrappy. The flip side is you don’t have to be a grizzled old business veteran to know that you can’t sell something you don’t have. No one was saying that it’s a requirement of a small scrappy company to sell something before they even have it built.

Adam: In other words, the approach was overpromise, and then scramble to deliver. And Don was frustrated by this because he felt it meant he could never do a good job.

Don: Nobody wants to do a bad job. Nobody wants to write crappy code that makes them gag. Everybody wants to do the best that they can. It doesn’t matter where you’re working. Even in the darkest days of the lowest morale at Initech, I still wanted to do the best job that I could do. I was still looking for ways to improve the system, to make at least a corner of it a little bit better. I think it’s a failure of management not to realize that. It’s demoralizing to always be in firefighter mode. You don’t think that you’ll ever put the fire out. It’ll always be burning somewhere, and it’s a demoralizing thought. It makes you kind of cynical. I think you start getting a little bit more short with people than you normally would be. You lose the optimistic outlook that you had when you started, and you start feeling like you’re just in the muck and trying to wait it out.

A New Exciting Project

Adam: At this point, Don was probably on the way out, even if he wasn’t admitting it to himself yet. He had become pretty bitter, but mainly just because he cared about the product so much. He had now put six years of his life into working on it and he probably knew more about it than anyone else. And then he had an idea.

Don: So, I went into Marvin’s office. He was a sales guy. He did a lot of cold calling and stuff and trying to get people onto our product. And I saw on his board, there were a lot of names that were crossed out. And I asked him, “What’s going on with all these names? Did we lose these guys? And if so, why did they walk away?” And he said, “Oh, don’t worry about those clients are too small. We don’t care about those. We’re looking for the big fish. We want enterprise level clients only. That’s the bread and butter. That’s where all the money is to be made. We want the big umbrella corps that are a million dollars.”

Adam: Because they want all the customizations.

Don: Yeah, they have bigger budgets. They have more money for SCRs.

Adam: SCRs were software change requests. Customers would pay to have features added to the product. It’s sort of auctioning off the priorities of your roadmap.

Don: “Our whole company is based on this SCR business model. We can upsell them a lot. We’re not going to waste our time on these guys.” And I said, “Well, they’re small to medium clients. What if we had a very light version of our product that just did the basic you take a course, and we can just spin up these instances within an hour. We could have an environment ready for them to go. And it’s like a turnkey solution, and they can just run with it and they don’t need any of the enterprise bells and whistles that we turn on for everybody else. It could be just extremely lightweight.” He said, “Well, that’d be great. I could have sold them all to all these people. They could have also sold maybe support contracts to them, because that was also a revenue stream.”

So, I went back to my desk and I started asking a couple other developers, what is the basic bare minimum elements that we require to make a learning system? And we all worked on the whiteboard. I don’t know if you remember this. There was a whiteboard in my office. And we all worked on it and we came up with the bare minimum requirements for what are required.

Adam: And I assume you were pretty excited when you wrote the email. You’re like, bam, I got a way to help the company.

Don: Yeah, maybe a new project, I could reinvigorate some morale into the… Even everybody going around the whiteboard trying to figure out what was the basic elements to the system, they were excited.

The Proposal

Adam: Don put together a small business case. It painted a picture for taking a couple people off what they were working on and using them to start building the light self-serve version of the product. He sent an email off to the CEO and the CTO who quickly got back to him.

Don: I don’t remember the exact wording, but it was to the effect of thanks, but no thanks. I think that was the gist of it. They didn’t think that it would be, in the end, that it would make the company enough money to justify not doing all the stuff that they had in the pipeline already.

Adam: What did that feel like?

Don: Well, it just fed into the, well, what am I going to do? I guess I’ll just work on bugs. Give me another task.

Adam: I feel like the thing that Mark probably missed is that you guys all at the whiteboard coming up with that plan, if he would’ve said go ahead, you guys would’ve poured a lot of energy into that. It might’ve been an unreasonable plan, but you probably would’ve hit it just because you needed something, right? Not this endless bug list. If you give somebody something that they believe in and they throw themselves at, it can be powerful.

Don: Well, yeah, it could reinvigorate the team, make them all take a little bit of ownership over the product again, because at some point, the product starts feeling like a responsibility more than it does something that you just want to work on. It’s more of a obligation.

Adam: Part of the reason the project didn’t sound interesting was because, unknown to Don, they were in the midst of selling the company, and they did it. The company had a great customer list, and enterprise software is quite sticky. But post-acquisition, things didn’t go so well.

Don: The CEO that was in charge when they acquired the company left, and he had an idea on what he wanted to do with the company. But then when the new guy came in, he didn’t understand it and was like, “Whatever, just sunset that.” Yeah, so things were winding down. Several people had already left before that happened.

Moving On

Adam: One person that was let go was Hector, Don’s old manager. And for Don, that was hard to take.

Don: Yeah, so he had an idea about how to manage people and how to run a team that was completely different than what I had experienced up until that point. He was invested in my success, which was the mark of a good manager, where I hadn’t really gotten that anywhere else. I was kind of just a butt in a seat that was churning code.

Adam: I had also left. I followed Hector to another place called Opal, and then Don phoned up Hector.

Don: I said, “Hey, is there any chance that you have room for one more person?” And he’s like, “Well, I don’t know. Let me see what I can do.” He said, “Yeah, let me talk to a couple people and I’ll see,” because they were planning on actually expanding the team, at least that that’s what he told me, that they were already planning on hiring another person, but he would see what it could do about getting me an interview. And I went through the whole interview process. I got interviewed by the HR person, and then I got interviewed by him and the HR person, and then I got interviewed by the team in that giant team meeting. Then I went to work for Hector.

Opal Was Different

Adam: For Don’s first day at Opal. We drove in together, and the CEO of Opal, Jim, happened to be there. He was visiting from corporate headquarters.

Don: And he was super friendly guy. And I was the new hire. And he is like, “Oh hey, how’s it going? Welcome to the team.” He was actually there to talk to Hector about something, and he just asked me. He’s like, “So, what do you think we should do?” And I don’t remember what it was, but it was definitely product based. I offered my opinion on it. It was probably not a great opinion, but Jim was a nice guy. And I just remember thinking that in my entire career of six or seven years at Initech, Mark had never asked me what I thought. He had never asked, as far as I know, anybody on the team what they thought. It accentuated the point that this is a different company run with a different mindset. So, I got that feeling back that hey, I can build something cool here. I can contribute. My opinions are appreciated. I was getting back to what I liked about this job, coming up with solutions to problems and being able to build new things that were appreciated.

And I think that’s what we ended up doing. We started building a bunch of new stuff for that company that ended up being very successful for them.

You’re Worth Something

Adam: So, is that the big lesson, don’t get too… Don’t tie your identity too much to-

Don: No, I think it’s more realize that you are the resource that’s valuable. You’re worth something. I learned that you as a professional are worth fighting for. These companies are fighting over resources. It’s hard to find good people. And if you do good work, you’re worth it, and don’t ever feel that you’re not worth it. It’s worth going in and asking your boss for more compensation if you don’t feel that you’re being fairly compensated, right? There’s a perception in the workplace where people feel that they’re lucky to have this job, and they’ll just take it as long as they get to keep this job, and I’m lucky I’m here. I’m lucky to have this. But the opposite is sort of true, where the company’s lucky to have you. Don’t be afraid to realize that. The company’s the one that’s lucky. You’re doing good work for them every day, and that’s worth something to them, and they know it. So yeah, value yourself.

Outro

Adam: Thank you, Don, for sharing your story, and thanks for changing the names around. I think that gave you some space to talk about what that was like without having to worry about what you were saying. If you haven’t already listened to episodes 77, Why Still 80 Columns, or 75, April Fool is Canceled, or 72 or 60 or 46, check them out. Don’s in those. Don has been on the show a lot. And he’s also sort of my neighbor, and he gets mentioned in the monthly newsletter from time to time as well, where I share some details behind each episode and any writing I’ve been up to. And sometimes longer reflections on how things are going. There’s a link to the newsletter in the show notes.

And if you want more episodes, follow the supporters link. It’s also in the show notes, right in your podcast player, and you’ll get access to the bonus episode. The show supporters are the ones who keep this podcast going, so if you’re a supporter, thank you. Thank you so much. This episode was really interesting for me to do because my experiences at Initech were a bit different. And so I wanted to finish with just a personal question I had for Don. And until next time, thank you so much for listening.

Post-Scriopt

Adam: Okay. You’re now… You’ve been a developer for some time.

Don: Yeah.

Adam: I think we counted it out. Probably a third of your professional career, the first third was at Initech. Why do you think it holds so much place in your mind?

Don: I think it’s just formative. I don’t think that my years working at Initech formed everything that I have become as a professional. I think that it was just a piece, probably equal to that one third. Because a lot of what I’m doing today is also formed by the lessons I learned while I was working at Opal. A lot of who I am today is formed right up until the last few years of things that I’ve learned to do. I don’t think I ever stopped. There was never a point where it was like, okay, you’re done and now you’re that person for the next decade. No, you’re always changing. We have this conversation five years from now, I’ll be a different person.

Support CoRecursive

Hello,
I make CoRecursive because I love it when someone shares the details behind some project, some bug, or some incident with me.

No other podcast was telling stories quite like I wanted to hear.

Right now this is all done by just me and I love doing it, but it's also exhausting.

Recommending the show to others and contributing to this patreon are the biggest things you can do to help out.

Whatever you can do to help, I truly appreciate it!

Thanks! Adam Gordon Bell

Audio Player
back 15
forward 60s
00:00
00:00
42:03

The Unfulfilled Engineer