I had the pleasure of attending Ancient City Ruby and interviewing a few folks while I was there. Ernie Miller was a speaker at ACR, and also sat down with me to talk about agile, humane development, and the implications of technically oriented people making a track switch to management. Thanks, Ernie! Don't forget to follow @erniemiller on Twitter and let him know you enjoyed hearing him on @DeveloperTea!
I had the pleasure of attending Ancient City Ruby and interviewing a few folks while I was there. Ernie Miller was a speaker at ACR, and also sat down with me to talk about agile, humane development, and the implications of technically oriented people making a track switch to management. Thanks, Ernie! Don't forget to follow @erniemiller on Twitter and let him know you enjoyed hearing him on @DeveloperTea!
Links:
Give back to Developer Tea by going to https://developertea.com/donate!
Hey everyone and welcome to Developer Tea. My name is Jonathan Cottrell. I'm your host and today I am interviewing Ernie Miller. Ernie is a programmer, a speaker, a director of engineering at Invisium, and he writes at erniemiller.com and he also started humanedevelopment.org. From humanedevelopment.org you can read, We are humans working with humans to develop software for the benefit of humans. Go check that out. There's an entire kind of page there at humanedevelopment.org. I had the chance to meet Ernie at Ancient City Ruby, so this was over a week ago, and I was invited to go to Ancient City Ruby by the people at HashRocket, which I will drop a link to HashRocket. In the show notes, Ernie was one of those people, and I just had a fantastic time interviewing him. For that reason, we were on site there, and you'll hear a little bit of background noise in all of the interviews that I got while I was at Ancient City Ruby. Of course, this is just kind of unavoidable, so I apologize for any of the noise that you might hear, but Ernie was a joy to talk to and full of knowledge. I hope you enjoy the interview with Ernie Miller. I'm sitting here with Ernie Miller at Ancient City Ruby, and we've already started the interview. I pressed record on my little handheld recorder, and it's the first time I've used this recorder for an interview, and I actually have to press it twice to start recording. So Ernie and I have been talking to all of you without recording for the last 10 minutes or so, and so we're going to go back and try to cover some of this stuff. Hopefully, we'll get done in time to make it to the next talk. That's the goal here. Ernie, thank you so much for doing this with me and for having the patience with my equipment brain malfunction. Oh, it's all right. The UX on this microphone is subpar. Someone really needs to go analyze that. It really is. Yeah, so we're here at Ancient City Ruby in what is touted to be the oldest city. In the United States. It's a beautiful place. We were talking about it just a second ago. Yeah, it's pretty gorgeous. It's got a lot of history, hence Ancient City, right? Yeah. Definitely a lot of old things here. Everything I look at is like, that's really super old, and that's impressive. Some really cool... The hotel is the Casa Monica Autograph Collection, and I guess, you know, I don't know what the whole autograph collection part applies to, but apparently, I guess it's that they have a gallery here, and they have all the... They have pretty much all the art that's all around is... Pretty much for sale, as best I can tell. Yeah. If you happen to have a few thousand dollars you would like to spend on a painting, it's just a very classy joint, let me tell you. Ancient City Ruby has got to be one of the most classy conferences I've attended. Definitely. It's not like your airport hotel, the normal airport hotel. Speaking of airports, I actually had a chance to ride with Ernie yesterday. I brought him from the airport down to St. Augustine. And I was telling him just a second ago, I'm not sure why St. Augustine doesn't have its own flights, like fly into St. Augustine, but quite a few people, I think, found out, unfortunately, that they couldn't fly directly into St. Augustine. They had to fly into Jacksonville, which is about 45 minutes north, but it turned out to be a good thing for me. I had a chance to talk with Ernie, and we had a really good talk for 45 minutes, which kind of laid the groundwork for what we're talking about in this interview. So yesterday you were talking about what you do on a day-to-day basis. Could you just kind of lay that out a little bit for listeners here? Sure. I'm the director of engineering for Invisium. We are an application security consulting firm based out of the D.C. area, but I'm still based out of Louisville, as a lot of people probably are aware. I'm a huge fan of working remotely. And so I do. I do all of the engineering direction, which apparently doesn't involve a director chair or megaphone or any fancy clapper. None of that. I don't ever get to say cut. This is my first director job, and it's really just not what I thought. But what I do do is I build tools for our consultants to use. I am responsible for building our team, our engineering team, and helping to drive some of the cultural decisions that we make about how we want our engineers to work. And so I'm responsible for building the engineering team to behave. And so we had kind of really ties into Pamela's talk earlier today about culture and what really makes company culture worth sticking around for. And that's something that's been on my mind a lot lately since now I'm responsible. Sure. Yeah. And I'm in a similar position in my day-to-day work. And it is the title director is kind of a strange feeling. It's kind of strange to have that. Title. Being responsible for the positive emotion, for example, in her talk is just it's very weighty. It feels very weighty sometimes. It's completely different from what I'm used to. And it's kind of inherited. I have been writing code for a long time, and then suddenly because I've been writing code for a long time, now I have management responsibility. And it's an interesting challenge. It's very different than. Than the challenges that are presented to me in code. Well, this is going to. I'm glad that we did two interviews, essentially, because this is going in a very different but interesting direction. And I think what you just said, it's interesting to me because we in our companies, there's often just an assumption that when you advance past a certain level as a programmer, the obvious next step is for you to manage people. That you must want to go there. You don't want to do this all your life. But, I mean, I look at someone which if you're if you were part of the Ruby community, for instance, you'd be familiar with a really a great member that we lost last year, Jim Weirich. Jim was always passionate about building things. He was as senior as you come when it comes to engineering skills. But I don't think anybody who even worked around him ever felt like he was a manager per se. That wasn't. That wasn't. He was just a guy who loved what he did and was excited about it and was allowed to thrive in his role. He worked for Neo, the name of the company that he was with. And before that, I think it was Edgecase. And I wish that more organizations got that, that there needs to be a technical track that you can proceed along and continue to do those things that you enjoy, that the natural evolution of your job does not need to be leadership. There are other ways. And we talked about them today in some of the talks to mentor other team members and stuff without being a direct manager necessarily. Just if you enjoy what you do, maybe you'll enjoy teaching it to other people as well. And that'll make you better in the process. Yeah. Yeah, it's really interesting because in some ways, you know, if you think about it, as you become better at something, you naturally should be doing more of that same thing. Like building on the same expertise. If you're going to maximize or be a maximizer, that comes from the strengths finder test. I don't know if you know anything about it. No. Is that a manager thing? I don't know. I don't know. I actually took it in college. Okay. And it identifies there's like 32 strengths, categorical strengths. Okay. And you take this test and it identifies five of your strengths. And one of mine is maximizer. And basically the idea is instead of trying to better your weak areas. Okay. You basically ignore your weak areas. And instead focus on the areas where you're good to make you excellent. Right. And so the concept being like I may not be so good at working with people and I shouldn't try if I'm not. Sure. I shouldn't try to like help that. This is a hypothetical. You seem pretty good at dealing with people, right? We're hypothetically speaking. I hope so. I'm a person. Right. As a member of the group that is called people, I would say you're doing fine at dealing with me. Right. And I think like a lot of people don't know how well they could deal with people. You know, there's a lot of people here, for instance, at this conference. And very uniquely amongst the computer science, like in large, that group of people, this group is very social. And like outwardly so. And we can kind of walk around and mingle and very easily make connections and talk with people. It's very open. It's not awkward. So I think a lot of the people in the Ruby community are unique in that way that they have. And this isn't a PSA for Ruby. You guys all know that I like Ruby. I like the community. So this isn't trying to sell you on it. But I've noticed this at this conference. And yeah. So the reason I say that is because that's not always true. Right. So you have somebody who is particularly good at building. Whatever it is that they're building. And to move into a managerial position is not like climbing a ladder. It's like stepping sideways. Right. It's a horizontal move more than it is a vertical move. They're very much like tracks. They're two kind of parallel railroad tracks. Right. And you can be moving along on one and perfectly happy. And then all of a sudden you make a shift. You're still in the same. You're still in the same place. You're just on that other track. Now. And it's frustrating, again, to have an organization that perceives there to be a hierarchy where there needn't be. There's a segment from another talk that I've been giving where I talk about specifically that we are all humans. Working with other humans to build software for the benefit of humans. And it's a core kind of premise of this humane development. A thing that I've been talking a lot about lately. And humanedevelopment.org. Go now. Click now. Click here. And so there's a part of it where we have to remember that it's not an us versus them thing. But a lot of organizations don't set us up for success in that way. And that they tend to place the them over the us. Yeah. And so when you create that sort of almost a class system or a caste system. Mm-hmm. Mm-hmm. Mm-hmm. Mm-hmm. For your employees. Is it any surprise then that that mentality develops? Right. Yeah. It's unfortunate, I think. Because we all just have difference. I mean, it sounds trite. But we're all different, right? But no less special. To sound very Sesame Street at the moment. And it's a shame that we don't recognize that. Do a better job of recognizing that in our companies and our organizational structure. Sure. Yeah. Yeah. Yeah. So. And let's be clear. clear. This is different from a discussion about skills, right? We can't treat everyone as if they're at the same skill level. So when I hear the term flat in a company, I feel like that's also not quite like the right approach, right? Because if we're all the same, which as humans, we all do have similar qualities. We all have similar redeeming qualities in any case. Yeah, and you know, these rights and all these things that we share and we are at equal levels at, there are also unequal parts of who we are. And when I say unequal, I mean some people just simply have more experience and therefore are better at certain things, right? I could admit to you that I'm not a very good basketball player. Like, I'm just awful. And a big reason for that is because I'm just not... I don't practice basketball. It's not something that I do. And so very clearly, if we were to treat our teams like basketball, or our development teams like basketball teams, like, we would be in trouble. We would lose a lot because that team puts, you know, the front line, the whatever, I don't know what the terms are for the first... Gay sports ball! Score a goal unit! So they put their best players in when they need their best players, right? Starting lineup. Yeah. There you go. There you go. Yeah, I'm a... I actually do... I really enjoy football. So... But that's a different topic. Well, you picked the wrong analogy then. Yeah, that's right. Let's back this up. First string is what you would call it. Yeah. First string in football. Yeah. But we have to be able to understand that talent, or whatever you want to call that ethereal thing, experience, those... proficiency, all of those things still matter. Sure. But we can't, you know... We can't say that once you reach a certain level of proficiency, that now you should move to that other track, like you were saying. Right. And there's a balance. There's certainly a balance. Sure. There's a difference between... There's a difference between acknowledging that people have differing levels of skill in a particular area, and implying, or outright stating in some companies, that a person is inherently more valuable as a human being. That is, more indispensable, or less dispensable, I suppose, would be... Yeah. You know, in that we should all be striving to, you know, raise the water level so that everybody floats higher. Mm-hmm. And it doesn't necessarily mean... It's sort of... And I'll talk about it again tomorrow, but we derive our... Okay. So, if you put... You all know those name tags that say, you know, hello, my name is... Mm-hmm. ...in our world. Mm-hmm. ...or whatever. Mm-hmm. And if you take one of those name tags... Let's say you have a group of, you know, 20 people getting together, hanging out, and you give everybody one of these name tags, and you tell them, one rule, though, you can't write your name on there. Right? Mm-hmm. Write something that identifies you. Mm-hmm. It's interesting, you know, and in the States, we oftentimes identify ourselves by what we do for our career. Mm-hmm. It's very frequently one of the first things that we... Like, somebody will say, you know, you just run into somebody on the elevator, and they'll... It's the kind of... Or small talk. So, what do you do? You know, it's just... It's something that we think is, you know, super... Next to how's the weather. It's... Right. It's one of those things... ...that you absolutely bring up. And it's so core to kind of how we perceive ourselves. Mm-hmm. And yet, if you push for somebody to come up with something like that, you'll find out that this is some core way that they derive their sense of self-worth, their identity from, right? And so, they act out of that. And so, you know, in the talk, I want to... Mm-hmm. ...specifically bring up some things that I've discovered about myself, and that, as I began to dig, you know, initially, I thought I was a Rails coder. Mm-hmm. And then, I thought I was a Rubyist. And then, I thought, well, that's still too limiting, because now I kind of like Elixir as well. I'm a programmer. Mm-hmm. But realistically, if I look back to why I started doing any of this stuff, it was the creative impulse. Mm-hmm. It was... I wanted to create things. Back then, I wanted to make video games. Right. You know? Right. Right. And so, I look at that, and I think... The creator is what I am. I am a creator. I want to do creative things. And I don't necessarily care about the medium that I work in... Mm-hmm. ...so much as that creative aspect of what I do. That's what makes me happy. Sure. Yeah. You know? And so... And that's something I think that the Rubyists, as a community, seem to emphasize a lot, because the creator of the Ruby programming language emphasized programmer happiness when he built it. Mm-hmm. Mm-hmm. And so, because of that, I think that that carried over, in some ways, into the community that built around the language. It's an expectation we have. We set a certain bar for how much the language should come to us. Right. We don't want to go to the language. We want the language... The computer should be working for us. Mm-hmm. And it does a really good job of that. Mm-hmm. And we have high expectations, and they're mostly satisfied in our day-to-day usage of the language. Thanks so much for listening to the first part of the interview with Ernie Miller. If you'd like to make sure that you don't miss the second part, you can always subscribe. Through whatever app you use to listen to podcasts, and then that app will give you a notification whenever the next episode of Developer Tea comes out. If you haven't done it yet, please drop into iTunes and leave a review for this show. It's the best way to help other developers just like you find Developer Tea. If you have any suggestions for the show, you can reach out on Twitter at atDeveloperTea or at DeveloperTea at gmail.com. You can find Ernie at atErnieMiller. Make sure you send him a ton of tweets letting him know how much you enjoyed listening to him on Developer Tea. And until next time, enjoy your tea. Ernie Millerension Podcastension Ernie Miller Ernie Miller Ernie Miller Ernie Miller Ernie Miller Ernie Miller Ernie Miller Ernie Miller Ernie Miller Ernie Miller Ernie Miller Ernie Miller Ernie Miller Ernie Miller Ernie Miller Ernie Miller Ernie Miller