 I hope you're having a fantastic RailsConf. Welcome to day four. My name's Jesse Link and I'll be talking to you today about how to be a boss without the BS. When you take the BS out of boss, you're left with OS, which I like to think stands for Outstanding Sauce, which this dog is clearly full of and hopefully you will be full of as well. So let's get right into it. What are the things we're gonna cover today? We're basically gonna go over the five Ws. Why you should consider management, moving into that track. Who makes a good boss? The skills you need to cultivate, to be an effective manager and boss and leader of men, when and how to make that jump into the management track. And then finally, where you can find some resources. Now when I do a talk like this, I also like to cover the things that this talk is explicitly not about. The abstract only gave us a very short amount of character, so I wanna make sure that this is the talk you actually wanna be in. This is explicitly not about how to found a startup or how to get BC financing. There are other folks here who can help you with that. I'm sure they'll be happy to talk about you. I won't really be covering that topic. This is also not how to make your employees obey you. We will only be covering light side, Jedi mind tricks. There are no shortcuts or tricks that I can tell you to make your employees obey you. You can only work on the skills that we talk about today and try to cultivate your leadership skills that way. So first, a little bit about me. Why am I qualified to talk to you about being a boss? My company made me get a head shot for our corporate website. This is the head shot here. My mother loves this picture because she thinks I look like a fancy professional lady. I like this head shot because she doesn't know I'm wearing shorts and flip flops. So, take that mom. So, all business up top, party in the bottom, don't worry. So, I've actually served in a variety of leadership roles. I actually served in the US Air Force for six years. I was a captain, which is an O3 for those of you who know that rank. When I came out, I transitioned into civilian software development world. I've been doing that since about the year 2000. I also have a computer science background. And I've been in civilian leadership since about 2010. Over the course of that time, I've studied leadership principles for over 18 years now. The military is very big on training you on that sort of stuff. So, I've tried to keep up that practice. I'm currently the director of engineering at a company called Looking Glass Cyber Solutions. We're a cybersecurity company based out of Baltimore. Look us up, we're pretty great. And I have some letters after my name there. So, I'm a certified scrum master and I also have a project management professional certification, which sounds more impressive than it really is. So, why make the leap? Why be a boss? Don't worry, it's not all TPS reports. I think a lot of people have a misconception about what it means to move into a formal management role. I think it's all paperwork, it's all drudgery. It's about being the enemy. It's about, you know, being, can you come in on Saturday? But management is about more than that. So, let's talk about why you might want to make that leap. Because make no mistake, this is not a job change. This is a career change. So, let's say you're a founder. You've started a business, fantastic. So, we know you can start a business. It's in the title. But can you grow your business? Can you finish? Can you exit startup mode? To start, all you need is a great idea and some coding ability. To sustain a business, you need to have management skills. You need to know how to sustain your business and lead your people and take your company to the next level of great success. Even if you haven't started a startup, you may just have hit your ceiling in the technical track. You may not be interested in moving into a chief architect role. You may be bored, frankly. Maybe the challenges you're taking on aren't that exciting anymore. And that's okay because moving into the management track means taking on new and exciting challenges. Being a boss is very, very, very challenging. Now, I know what you might be thinking. How hard can this possibly be? My boss is an idiot. He doesn't know what he's talking about. I don't know what she does all day. So let me amend my statement. Being a bad boss is very, very easy. Being a good boss is very hard. Most importantly, when you move into the management track, you get to be in the driver's seat. Now again, if you're that founder, that's your baby. You have a vision. You wanna drive towards what that company. If you don't wanna take on management responsibility, that's okay, but what that means is you're ceding control to someone else who is gonna come in and run your business for you. And you might not know the direction they take you in. So if you wanna make and train control over that thing that you started, take it to the finish line, you need to cultivate those management skills. Same thing if you're a senior developer, you may find yourself saying, you know, I don't really care for the decisions they're making. I think I can do better than go do better. Prove it. To me, the fifth bullet is the most important one. It's why I moved into the management track and it's why I stand in it. It's why I feel fulfilled every day when I come to work. When you move into a former management role, you get to have an impact on the career of your employees. You really get to help mold and make them into the people they're gonna be tomorrow. And that is tremendously rewarding. There is nothing better than seeing a junior developer blossom into the big, beautiful, senior engineer butterflies they were always meant to be. And you're a big part about taking them on that journey. Finally, you get to see the business from a new perspective. Again, part of your boredom might be only sort of staying in this very narrow engineering track. As you move into a management role, you get a chance to touch other parts of the business. You get to see how marketing works, how sales work, financing, how you deal with customers, what happens at the C-suite level. So you get to see how the sausage is made from a new perspective and that can be tremendously rewarding as well. So as a boss, you take on a bunch of new responsibilities other than just writing code and developing systems. You're responsible for people, schedule, budget, and scope. So who makes a good boss? What are the characteristics of a person who can move into this track and have success? Number one, you should like people. You're gonna have to deal with people when you're job. Now this does not mean you need to be an extrovert. You can be an introvert and succeed at being a boss. Just means you can't be anti-social. If you hate people, that's okay. Keep doing your thing. Maybe management isn't for you. You should really care about the people you're gonna lead. You should care about the people you're gonna interact with. You have to care about your customers. So that's sort of a key component. You can't fear conflict. There are people out there who are conflict diverse. That's okay. The management track probably isn't for you. If you are not willing to confront conflict, head on, it will overwhelm you and your team. So you have to be ready to get a little spicy sometimes, get a little scrappy. Adaptability is probably one of the most important traits. I don't think I've ever had a project go smoothly and according to plan. I think many of you have probably never worked on a project that's gone 100% perfect and according to plan. And if you can't be adaptable when things go wrong, you're really gonna struggle and you're gonna drag your team down. You have to be confident. Confidence is contagious, so is lack of confidence. If you don't believe in what you're doing, if you don't believe in the game plan you have, your people are gonna sense that and they're not gonna believe in what they're doing. You also have to have the confidence to once you set that game plan, move forward with it. Having said that, you have to be humble. There's nothing worse than a boss who knows it all, maybe some of you who work for that kind of person. You can't tell them anything, their opinion's always right. There's nothing you can teach them. They're the boss. They're so much better than you. You have to have a sense of humility. You have to understand that you're not a perfect person and that you may make mistakes and you have to have the humility to listen to your team and let them tell you when you're wrong. You have to be empathetic. If you can't understand people, you can't lead them. If you cannot truly get where people are coming from, there's no way you're gonna be able to communicate effectively or lead them. Leadership is about understanding people's motivations, their desires, their drives, and then letting them move forward and embrace those things in a productive way. Lastly, you have to have integrity. As you move into the management track, you're going to be imbued with certain powers, certain responsibilities, but great power comes great responsibility. You have to be trustworthy to do the right thing. You're going to be trusted with budget, with firing decisions, hiring decisions, promotion decisions. If you are not an honest person, your team's really gonna suffer and your business may suffer. So up till now, you've been cultivating your technical skills. You're at RailsConf probably to continue to grow those technical skills and that's fantastic. But again, this is a career change. A career change requires a whole new different set of skills that you need to start cultivating alongside those technical skills. First and foremost is the communication skill. So communication encompasses a lot of different things. It's verbal, it's being able to speak to people. It's also non-verbal. 70% of the communication we have with each other is actually non-verbal. So understanding how non-verbal works and how you leverage that when you're dealing with someone who's remote, dealing with them on a webcam, not in person, understanding how that works is very important, understanding how to write, how to articulate your thoughts on the written paper and an email. We're in the industry right now where a lot of communication happens asynchronously, pull requests, formal emails, memos. This is the most important ability you must have. You cannot execute the other skills if you do not have this one. You will see the theme of communication echo throughout my following slides. Communication knows, it means knowing how to tune your message to your audience. It's not just what you say, it's how you say it. Understand how to tune your message when you're communicating downward, when you're talking to your employees. How do you communicate laterally when you're dealing with peers of the company, other managers? How do you communicate upward with the C-suite executives? Do you know how to manage upwards? How do you communicate with customers? How do you deal with other business units? These are all things you really need to understand. You know, I think as people who attend something like RailsConf, we pride ourselves on being polyglots. We speak many languages. We're not just Ruby developers. We speak JavaScript. We do different frameworks like Ember. We do CSS, HTML, Java. The list goes on and on and on. The same principle actually applies when you begin communicating at the management level. When we're talking about communication as you move into the management track, I'm talking about domain-specific languages. So the terms that a salesman uses may be very different than the term an engineer uses. Same thing with marketing, same thing with your customers. Understanding how to communicate with those different domain-specific languages, how to mold your message so that it speaks to that person that you're talking to and it really resonates with them is a really important skill to cultivate. Now, communication is way too broad for me to cover in just one slide. I could probably give a talk just about this slide. So I won't be able to cover the whole span of what it really means to communicate. I will start with a couple of key skills, though, that I think are the foundation to moving along as you improve your communication. And that's this principle right here, which is communication is a two-way street. So when you start learning how to communicate and you start analyzing your own communication style, you should really be thinking, am I an active listener? Have you ever had a conversation with someone? And you can tell, they're not listening to what you're saying. They're listening because they're waiting for the break in the conversation when it's their turn to talk. Don't be that person. That person is not an active listener. They don't really care what you're saying, they just want their turn to put their opinion out in the world. Part of being an active listener and dealing with folks is really being respectful to their opinion. You don't have to agree with them. But again, it goes back to that empathy trait. Understand where they're coming from, hear what they're saying, and only then do you respond. There's a difference between being a reactive listener and an active listener. Delegation. As you start to grow your team, as you start to get more and more folks, this is a critical, critical skill. And this is a skill that I think many young managers struggle with. Your job is to make sure the team gets the work done. Your job is not to do the work yourself anymore. You're just one person. You may have 12 people working for you. You cannot outpace the output of your team. When you learn to delegate, you have to set direction. And again, communication, coming back already in the next slide. You have to communicate what needs to be done in a clear fashion. Are your objectives clear? Does the person understand what they need to get done? And this is really hard because this requires trust. I think another misconception people have is, you know what? I get the term manager in front of my name and I have unlimited power just like the emperor. I control the world. I am the queen of everything. The most important thing to understand as you learn to delegate, as you learn to be a manager, is that you do not have control. Control is a lie. You're responsible for the ultimate success of the project, but you can't do the work on your own anymore. You don't have that control. You cannot make success. You can only put in place the conditions to allow it to happen. And that's what delegation's really about, is learning to become Zen about letting go a little. Managers who cannot do this are often referred to as micromanagers. You have probably worked for some of them. Don't be a micromanager. It's very disruptive to the team. You will not be very productive. This is the reason many micromanagers fail to lead their team successfully. Again, part of losing control is accepting that sometimes they're not gonna get it right. And that last bullet to me is very important. You cannot fear failure. You have to let your employees fail on their own. I have learned more from the one time that I have misplaced the semicolon somewhere in my code. Then all the hundreds of times I have put the semicolon in the right place. Failure can be tremendously valuable as a learning experience for your people. So you cannot be afraid to let them fail a little bit on their own. Now again, you're gonna have to balance that out. If you're crashing in a fiery mess, there's going to be a time to go in and rescue them. But you have to let them kind of work it out, get through those difficult spots on their own. And again, that's something a lot of folks really struggle with. Another skill when you move into management is the skill of coaching. So the man in this slide here is Vince Lombardi. He's one of the great minds in the history of football. I should say American football. I know we have some international folks here who are probably thinking, that doesn't look like a soccer play. So Vince Lombardi is a legend in the American football industry. He is enshrined in Canton. And he's famous not only for his acumen at football, at strategy, as you can see on the board behind him, but also his ability to lead and inspire 40 grown men who don't have to say, who don't have to do what he says to do. If you get a chance to Google Vince Lombardi quotes, he is a treasure trove of wisdom and insight on how to lead teams effectively. So what is coaching? Coaching is about making sure your people continue to grow. Going back to that previous slide, why do we delegate? We delegate because it's our responsibility to grow the leaders of tomorrow and to continue to grow the junior devs into the senior devs of tomorrow. I once interviewed a technical team lead and I was asking him, well, tell me about how you manage your folks. I see you have some people working for you. How do you delegate work out? He said, well, I give them sort of the grunt work and then they get to run the metrics and then they turn the results over to me and then I go do the rest of it. He got to do all the fun stuff. His guys got all the grunt work. Do you think the people on his team ever grew out of their junior dev roles when all that he gave them was grunt work? So you have to be willing to let your people grow, even though it means taking it back seat sometimes. Instead, what you should be focusing on is inspiring and motivating the people underneath you to be the best that they can be. Vince Lombardi once said, practice doesn't make perfect, only perfect practice makes perfect. So at some point, again, your folks are going to fail. They're going to do the wrong thing. Your job as a coach is to correct that bad behavior, right? To correct the things they're doing wrong, to teach them how to do things better. And there's a real skill and a real art in terms of communicating and coaching folks so that they can receive that constructive criticism in a way that builds them up that doesn't tear them down. There's nothing worse than seeing someone wilt under unrelenting criticism from a boss. That is the best way to make sure someone quits to make sure the imposter syndrome never lets go of their little hearts. So it's very important that you build them up, not tear them down. Coaching is about having the confidence to set a game plan and then empower the team to execute on it. So again, empowering is a really important word in that statement, and it goes back to that delegation idea. Vince Lombardi was a brilliant football mind, but regardless of how brilliant he was at football, he did not run onto the field and throw the ball himself. He didn't run onto the field and tackle the other player, I'm sure he wanted to sometimes. But coaching is really about having confidence in your game plan and empowering the team to execute on it. Like I said, learning to trust can be very hard, but it's a lot easier to trust and delegate if you have faith in the game plan you've put together. If you have a good coaching regimen that ensures that your people have learned to do it the right way, and it's a lot easier to let go and let them go do, let them go win that championship. This is a quote I like from General Dwight Eisenhower, and he said, leadership is the art of getting someone else to do something you want done, because he wants to do it. When you communicate, as you move into the management ranks, you're gonna be imbued with a lot of formal responsibility. I like to call that hard power. Hard power is do it because I say so. I can fire you if I want. I do not recommend you use a lot of hard power. No one had more hard power than General Dwight Eisenhower. He was a five star general. There was literally not another person in the military who could tell him what to do. So I think the fact that he made this quote here is very, very provocative, because it's not talking about hard power. It's not saying just get enough stars on your chest until you can make them do what you wanna do. I mean, he could literally put people in jail if they didn't follow his commands. What he's talking about here is actually the art of applying soft power. Soft power is being able to communicate and convince folks to really buy into what you wanna do as a team, what you wanna do as a company, without the threat of the hard power, even if you have it. Just because you have a stick doesn't mean you need to wield it. Understanding how to wield soft power is very, very, very important. Lazy bosses, bad bosses, go back to the hard power stick because they have no other tools in their regimen. So really understanding the concept of soft power and how to apply that is important. And again, there's no idea more powerful than an idea that someone feels is their own. So help them understand the idea, help them understand what you want done, and then help them understand why they wanna do it. Courage, another important skill. Is it a skill? I would argue it is, because it's really about knowing how to stick to your guns but still get stuff done. Again, with great power becomes great responsibility. As you delegate out the work, the work might not get done, but the buck still stops with you. It's still your ultimate responsibility when things don't go right. Having the courage to own that failure is really, really difficult. It takes a lot of guts, believe it or not, to say, you know what, that's my bad. A bad boss who does not understand this concept will throw people under the bus. We didn't get it done because this other team failed to give me something I needed. Oh, well, this employee isn't doing a good job. He failed on it, I'll be disciplining him later, potentially firing him, but it's not my fault. So having the courage to understand where your responsibility lies and how to embrace that is really important. Saying no can be very, very difficult, just because you have a little bit of hard power as you move up in the rank doesn't mean you're the only one with power, unless maybe you're Emperor Palpatine, but there will be other managers that have power. There's going to be people above you have more power. Your boss is gonna come down and ask you to do things you may not be comfortable with. It's your job to understand how to say no, and this is actually a skill that a lot of folks struggle with. I've had developers on my teams actually come to me and say, I feel very uncomfortable with what's being asked of me by this other manager, but I don't know what to do. And often they say, do you want me to tell them no for you? And they say yes. And that's hard. That's that conflict that we talked about. You can't fear it. There's gonna be a time where you have to have integrity and learn when to say no. Does not mean just being contrary. That does not mean saying no and then walking away and flouncing out of way from the argument. Again, it really means leveraging your communication skills that you hone so that you can say no in a productive way, that you can move past those disagreements, that you're willing to yield if you're not actually right. So balancing out how to say no, the art of saying no is very, very tricky and it requires a lot of courage. When you start to set direction, your employees may not always buy in right away. Some people may fear not being liked. Sometimes you're gonna have to do uncomfortable things as a team. You have to have a vision and you have to believe in it. You have to believe you're going the right way. A boss who does not have courage, who does not have vision and does not believe in where they're going will change with the wind. They will change course at every minor difficulty that comes up. You know what? This isn't working. We'll just change frameworks. We'll just hire more people. You've probably worked for folks like that. That's not a very productive way to go. People wanna believe their leaders know what they're doing. So you have to have vision and you have to believe in it. Having said that, you have to know the difference between a bump in the road and a chasm around the corner. If there's a chasm around the corner, do not fear change. A lot of folks fear change. They don't wanna change their game plan. They get nervous because, well, we've always done it this way. I don't know, would we do this new way? I don't know if it's gonna be successful. Change is very scary. Bringing in new ideas, new thoughts, new processes can be very, very difficult. So you have to embrace change. You have to be an agent of change. You have to be adaptable. This last one, always embrace the truth even when it's unpleasant. People will tell their bosses what they think their bosses wanna hear. It's natural. It's very important that you cultivate a culture where honesty is rewarded and treasured, even when it's unpleasant, even when you're hearing things you don't wanna hear. I have had devs come to me many times and say, so, about that production server. You have to have an environment where it's a safe space to talk about what's really going on. Similarly, don't be that person to your boss. Your job is to communicate up to your boss and give them the facts at all times. That goes back to integrity. Sometimes your boss isn't gonna like it. Sometimes you're gonna look bad because it's going to be a sign of a failure, but you have to embrace the truth at all times. So you've been talking a lot about people skills, the art of managing people. And again, that is a discipline all encompassing on itself. But what about the project management skills, right? What about managing the work itself? So when you move into project management, what does this really mean? It means tracking work, measuring the work, tracking it, managing risk, and knowing how to report status. That second bullet is really important. Again, along the lines of not fearing failure, your job is not to be perfect. There's going to be times where you're gonna make decisions and you don't know the outcome. Your job is to understand the art of risk management. There are whole classes just on how to do risk management, what you're really trying to do is make the best decision with the facts you have at the time and then continue to measure that and say on top of it and say, all right, how does our risk look today? How does our risk look today? Your job is not to do the perfect job for your boss. Your job is to let him manage risk, to give him an informed choice. And again, people who are afraid to tell the truth, who are afraid to communicate upwards what's really going on, those are the projects that burst into flames that everyone's surprised. So risk management is very important. To do these things, there are many techniques you can apply, many frameworks. So you have to like process. You have to be a student of process. There are a lot of different project management frameworks you can use, you've probably heard of them before, Waterfall, Spiral, Kanban, XP, Add to all of the hotness, you can do Scrum. It's important that you respect and study all of them and that's that last bullet there. You have to like it, but you can't love it. You can't be so in love with one framework that you try to apply it in all situations. Don't be dogmatic about the frameworks you put into place. There is nothing worse than an agile person sometimes because it's agile at all costs no matter what, even when it makes no sense. It's also very fashionable to poo poo things like Waterfall. Waterfall has a place. It's very important that you understand how to assess the project that's been given to you, the people that have been given to you, and then pick the framework that actually fits that situation. It's really about picking the right tool for the job. When you have a hammer, every problem looks like a nail. So again, even if you don't use a framework, I don't use Waterfall a lot, but I still study it. I still look up books on an occasion, I still read articles, I educate myself about the different techniques that are out there. I wanna know what tools are available to me, even if I don't use them. So when I see a problem that actually looks like a screw and not a nail, I say, you know what? I'm gonna try that screwdriver. There are some administrative and financial things that are gonna affect how you manage, and again, it depends where you are in the management chain, how much influence you're gonna have over this. If you're doing a startup in particular, budgeting is going to be very important. If you understand the concept of colors of money, that is basically money that is earmarked for a specific purpose, it cannot be used for other purposes. So again, if you have green dollars that are allocated for infrastructure, you may not actually legally be able to shift that money over. I used to work in government contracting, and that's something very important that comes up in that, which is if the government gives you $100,000 to buy servers, you can't say, well, you know what? I'm a little short, and I wanna pay some bonuses to my folks, so I just won't buy those servers. So you have to understand how budgeting works. How do you project a budget? How do you do quarterly reports? What is the impact of your outcome, your income? How does salary work? How do you, how does salary affect how you project? So those are really important things. That's a hard skill. That's something I struggle with. That's something you're gonna be exposed to in your day-to-day life as an engineer until you move over. So understanding how budget works, how money flows at your company is critically important. We talked about the hard power you're imbued with, hiring folks, retention and firing. It is incredibly expensive to hire folks, which is why retention is so important. There were actually some tremendous talks on Wednesday. I recommend you go watch the videos on how to onboard folks, how to set up a training plan. Retaining talent once you get in the door is really important because hiring is so expensive. Having said that, there will be times where the person is not a fit, and if you have to fire them, you have to understand the implications of that decision. Each state has different right-to-work laws, so you need to understand the process for both hiring and firing folks. That's gonna be very important. So making sure you work with your HR folks and get educated on the various laws is very important. I know he said it wasn't all TPS reports, but it is at times. I don't even know what a TPS report is. I just use that as shorthand for the mandatory documents that seem like no fun, but you have to do them. And that's the thing, you do have to do them. It's your responsibility to understand what regulations are in place, what documents have to be done. Now, sometimes these are mandated from the corporate overlords, and I've done that before. But there are other legal documents that may come in depending on the industry you're in. I am in cybersecurity. Privacy laws are very important to us. You're understanding privacy laws. You're taking in people's data, you better understand what you're supposed to do with it. You work in healthcare. HIPAA's gonna come into play. So you're really making sure that you're educating yourself on the legal and regulatory documents that you need to be aware of is very important as you move into management. But it's kind of fun, because this is the part that you probably won't get exposed to a lot, and I actually kind of enjoy seeing these different things, you know, these different areas that I didn't, that I didn't really get a sense of when I was just an engineer. A lot of this stuff is really the guts of what makes the company go. Okay. So hopefully you're tempted now. You said, oh, you know what? Management doesn't sound so terrible. Maybe it's pretty good. Maybe I've got some of those skills. Maybe I'd like to work on them. I'm ready to make the leap. So let's talk about when and how to do that. Moving into management. Number one, find a mentor. Find a safe person to help teach you the ways a Jedi master that you can go to. I have several mentors who are senior leaders that I like to talk to to kind of bounce ideas off of. Again, you're not perfect, so find someone who can help you with that. Try before you buy. Many of you are already in leadership roles. You may not have formal powers of hiring, firing, but you're starting to lead people. So look for those opportunities. If you're interested in this, try it out. Say, you know what? I see this project's coming up. I'd love to lead it. Or hey, these two guys, I'd love to take them under my wing, mentor them, maybe be part of their review process. That's a great way to sort of try it out, see if it's a fit for you. It's not for everyone, but you may be surprised at how much you really find it. I love working with people. That's how I ended up in management. I was doing an informal leadership role and I really enjoyed it and I wanted to continue down that track. Learning to think company-wide. Again, there are other areas of the business you need to be aware of. So go on a sales call. Go to a conference and help the marketing guys run up, be a booth babe. I've done that before. It's actually a lot of fun. It's a different perspective. Understand how to court your customers. Go help the ops guys. Go sit in the customer support center for a while and take calls with them and understand what happens in the rest of the company. Lastly, have an idea of what kind of leadership style you have. There is no one prescriptive way to do it. There's no one way to lead people. Everyone's different. We're all different, unique snowflakes. The people we manage are different snowflakes. They may require different types of leadership style. So think about what kind of leader you want to be and then practice the skills to do that. So some of the big questions that came up as I was starting to prepare this talk and talk to some of my peers. I think this is one that's on a lot of folks mind. If it's a career change, I'm leaving the technical track, do I still get to write code? And the answer is yes, sort of. I've actually talked to a lot of folks about this in the last couple of weeks and I've met some people who say, you know what, I can code 85% of the time and manage 15% of the time and that's fantastic if you can do that. It's really gonna depend on the needs of your company and the size of your company. It is absolutely your job to stay technical. You are supervising technical people. You need to know what they're talking about. Having said that your priority is no longer writing code. That's your team's job. You might be the only person on the team who can go brief the executives. I've had to take an hour out of my day to look at everyone's expense reports. That's not exactly more fun than writing code but those expense reports matter to the people who are waiting on that money. So you're gonna have other priorities that are gonna come above that code. So usually I like to give a little bit of advice. If you wanna stay involved in the code, a couple of things you can do. So number one, participate in code reviews. I do a lot of code reviews these days. I don't write a lot of code from scratch but I do at least stay involved in the code by being part of the review process, downloading it, poking it, running the tests and that kind of stuff. And it's a great way to continue to learn and stay involved. It's very important that if you decide that part of your day job should still involve working on code, I would recommend not working on critical path items because again, there may be some management crisis that comes up that only you can work on and it would suck to hold the whole team up just because you haven't finished your chunk of the code. So look for opportunities if maybe some low hanging fruit, some quick wins. I actually just the other day picked up some code and successfully merged the master because I was working some defects that weren't on the critical path. But they got in and it was nice and I still got to exercise my code writing skills. Also maybe work on some side projects that's usually how I try to stay involved with things that are going on the technology. You just might not have a lot of time during your day job to write code anymore. So your mileage is gonna vary. I left my last job because I knew at that job to continue at the management chain meant I could no longer write code, period. I didn't want that. So I went to a smaller company and I still have about 10% of my day where I get to be in the code in one way or the other. So I feel pretty good about that. Can I still be friends with my employees? This is a tricky one. The answer is yes, sort of. Again, many of you may be promoted out of the very ranks of where your friends are. We're all fellow engineers, we hang out, we go to beers, and not on their boss. This is a very sensitive topic. So if you wanna be friends with your employees, that's completely fine, but it's very important that you have a system of firewalls in place so that you're separating your personal relationship from your professional relationship. And you have to think very hard about the impact of your friendship and how public you are with your friendship on the rest of the company. If Jeff, the engineer, hangs out with Jane, the manager, all the time and he's at her house and there's also our best friends and they're doing things every weekend and their kids play together. And then Jeff wins, engineer of the quarter. How does that come across to the rest of the team? He might actually be worthy of engineer of the quarter but perception is reality. So you have to be very, very sensitive to the realities of that if you're going to maintain those friendships. It can also go the other way. I actually had a boss who I worked with, who was a very good friend of mine. He brought me onto his team and we have a very saucy relationship. He tells, oh, FU, and I'll say FU and then we hug and have a beer and it's fine. And that's fine, but he actually said that to me in the workplace once. And he said it in front of other coworkers. And he was very incapable ultimately of separating how we spoke to each other as friends at the bar from how we spoke to each other in the workplace. And it actually caused a lot of problems on our team. And it actually upset me a lot because I would never allow a boss to say that to me. And he couldn't put his boss hat on and put his friend hat aside. So I ended up leaving that team and he's still one of my best friends and I will never work for him again. He's actually a good guy. He's a good boss if you're not his friend. So be very sensitive to the impact of this. This is a tricky one. You can be friendly but be careful. Lastly, do I need to have a PMP certification, project manager professional certification or something like that? And the answer is absolutely not. And again, it's gonna depend on the kind of company you're at. If you're a small company, you may never need this. Having said that, the PMP can be nice. It's a nice to have. It's a box checked on your resume. I've actually had people pick up my resume and say, oh good, you have a PMP. But I don't think it's gonna exclude you from jobs. The only exception might be if you go into a very, very large company. The government act, the reason I have my PMP is the government decided they wouldn't allow program managers that didn't have a PMP certification. So a way I went to class. That's why I'm not in government contracting anymore for many reasons. A few final thoughts. It's important that you solve exam all the time. Think about the kind of leader you wanna be versus the kind of leader you're actually being. So I kinda wanted to close out here by sharing a few key leadership principles and thoughts that guide me personally. Just to let you know what kind of leader I actually am. I hope on a good day. That last bullet is very important to me. Leaders eat last. Goes back to that concept I told you about the team leader who took all the best work for himself and left his leadings for the minions. He was eating first. I had a boss once who said, you know what, we wanna go to training. We put together a training plan for him. We said, this is the course. This is the location. These are the people we think should go. He looked at it and he said, that looks pretty good. And then he sent himself to training. He went to the training himself. And we said, well, why did you do that? And he said, well, I wanted to make sure the training was appropriate for you. That was actually a really formative moment for me. I've learned a lot from my bad bosses, believe it or not. I've taken a lot of notes. And I saw how devastating that impact was on the team. Not only because he was eating first and taking training before anyone else on his team, but also the lack of trust that implied. He didn't trust you to go to training and come back and give him an assessment of whether or not he should send other folks. So it's very important that you put your team first. Your teams need to come first at all times. Lead from the front, what does that mean? It means don't ask them to do anything. You are not willing to do yourself. If you don't wanna work weekends, why should they? You don't wanna do the unfun work. You don't wanna do QA. QA is unfun sometimes, but I do it because I expect them to do it. Leading from the front is the difference between being on the top picture and being on the bottom picture. Along the similar lines, it's not your employee's job to fill your pain. There's nothing worse than a boss who complains down and expects their employees to make sure that their job is happy. Your job is to make their job happy. That's what your job is. If you wanna complain about your pain, that's what your boss is for. It flows uphill, it doesn't go down. A lot of bosses cannot maintain that separation, particularly of their friends with their employees. So nobody cares what you want. Your job is to make sure the work gets done. Their job is to execute on that work, not stop what they're doing to console you or make you feel better about your day. I believe a high-performing team will always be greater than the sum of its parts. The 10X engineers are great. They're great to have on your team. I believe a team of average engineers truly working together will always outperform that one engineer. I like to colt. So everything I do, every moment of my day is really about, am I establishing a team environment? Am I establishing the kind of culture where team comes first? And again, trying to be selfless is a great way to start if you wanna cultivate that kind of environment. Finally, you're never done learning. Another quote from Vince Lombardi. Leaders are not born, they are made. And they are made just like anything else through hard work. And that's the price we'll have to pay to achieve that goal or any goal. I've been saying this for 18 years. I'm gonna study it for the rest of my life. I will always continue to improve, hopefully. I'm always trying to learn new things, talk to other leaders, read books. I may do this presentation in a year. It may be completely different because maybe I hope it's different because I hope I've learned something new and amazing about leadership that I can share. Lastly, I'd like to leave with a quote on from Admiral Grace Hopper, a pioneer in the computer science industry, great military leader. He said, you manage things, you lead people. The key to being a good boss is really understanding the nuance of that. You manage things, you lead people. You use things, you don't use people. Understanding the difference between those concepts is really the key to leadership. I said I'd tell you where to find resources, so I'm gonna put this up right here. I will share on the next slide. There's going to be a link to my deck, so I don't feel you have to write this down right now. Very quickly, if your company will pay for training, take advantage of it, it may sound dorky to go to a week-long communication class. There's a lot you can learn if you're humble enough to admit that you have something to learn. There's a lot of free resources on the internet. TED Talks, there's a lot of talks about leadership there. There's other videos. You can go out and seek it. There's a lot of videos of notable speakers. PMI is a project management institute. If you have your PMP certification, they have free resources, webinars, dinners you can go to. History's a really important one. We're at RailsConf being like, oh my God, Rails is 10 years old. We're so old. Leadership has been around since the dawn of man, since one caveman turned to another and said, you know what, if we got some guys together, we could kill that mammoth. That's project management right there. You stab the left side, that's your job, and I'm gonna stab the right side. And our success criteria will be the mammoth is dead. So don't be afraid to look. Obviously, management, leadership is an evolving art, and yet some of the fundamental things that drive people have remained the same over thousands of years. Sun Sue's Art of War is still studied by military leaders today. Abraham Lincoln, the great 16th American president, has so much to teach us about how to apply hard power versus soft power. See the movie Lincoln. I am the president of the United States, clothes and immense power, and I will have this bill. That's hard power. But then the other scene where he's talking to Tommy Lee Jones, the senator, and he's convincing him, because that guy doesn't have to listen to him. He said, let me tell you a story. Let me show you an analogy about why you need to do this. Let me convince you, soft power. So study great leaders in history. Churchill, Steve Jobs, go as far back as you want. I'm a reader, I like books. I looked up management on Amazon. I got back 900,000 hits, so there are plenty of books out there. I will quote DHAs a little bit here and say beware of books that are diet-esque. In other words, this management style will change your life in 15 minutes to take it with a grain of salt. These are three books I recommend. I've just read them. And again, going back to that, Learning from People in History. Dale Carnegie wrote a tremendous book called How to Make Friends and Influence People, which is really about the art of communication. How to provide criticism without crushing people. How to basically influence folks in a positive way. He wrote that in 1935 and it still resonates today. It's still one of the 12 most influential business books. I think it was some article by Business Inc. Warren Buffett said that book changed his life. And he's a billionaire, maybe he knows some stuff. And then finally again, studying frameworks. Agile Simon is a great touch point if you wanna get into learning about Agile frameworks. And I finished right in time, so go me. If you wanna find me on Twitter at my typist, learn from the leaders around you as well. I'm happy to talk to you about my thoughts on leadership at any time. If you wanna see my terrible public code, it's right there on GitHub. You can actually look at my commit record and you know when releases are happening because it goes stark white because I have no time to code because I'm putting out 1,000 fires. And lastly, you can get these slides on speaker deck. That's the link there. Thank you guys so much for coming. I think I've got maybe a minute or two for questions. Or you can clap first. Thank you.