It takes more than great code to be a great engineer. Soft Skills Engineering is a weekly advice podcast for software developers about the non-technical stuff that goes into being a great software developer.
Similar Podcasts

The Infinite Monkey Cage
Brian Cox and Robin Ince host a witty, irreverent look at the world through scientists' eyes.

CppCast
Every two weeks, or so, we sit down with guests from the C++ community to discuss the latest news and what they have been up to. Find us at cppcast.com

24H24L
Evento en línea, de 24 horas de duración que consiste en la emisión de 24 audios de diversas temáticas sobre GNU/Linux. Estos son los audios del evento en formato podcast.
Episode 260: Pay cut after hired and new job ramp-up
In this episode, Dave and Jamison answer these questions: Questions Hey guys! I’m a long-time listener and like many of your other listeners have listened to each episode! Until now I didn’t have anything to ask, however, I have a story to tell and I was hoping for your opinions on this. Someone I know is a somewhat junior dev, they left their first job for a new job that had better pay. They were pretty good at negotiating a good salary, while still being transparent about their work history. But a few months ago management said they were underperforming compared to other coworkers and their pay would have to be cut. At first, they said at most it would be 10%. However, it ended up being 23%, which way less than even their prior job. Needless to say, they’re taking the softskills option and looking for a new job. My question is how commonly does this happen, and what are some telltale signs that this could potentially happen? Thanks for your time and a have great week! I’m 8 years into a career in software engineering and I just accepted a senior engineering position at a well respected tech company in Silicon Valley. While I believe I am qualified for the position, it will be a big step up for me in terms of the caliber of engineers I’ll be working with as well as the overall scale of the system compared to my previous jobs. The standards of engineering and general productivity will likely be higher than I am used to, though I’m excited to level up. I’m not looking for advice about my specific situation, but I’m curious: what are your guys’ priorities during your first days, weeks or months at a new but senior-level job, to ensure you hit the ground running and set yourself up for a successful tenure at the company? Anything you used to do that you don’t anymore? Any common mistakes you see engineers make when they join new teams?
Episode 259: Moving up to meetings and will remote work stay a thing?
In this episode, Dave and Jamison answer these questions: Questions This question came with a delightful ASCII-art diagram that I will now dictate as follows: “pipe space space space space” JK TLDR: I want to move up the ranks but I’m not sure what might await me… except meetings. What should I expect? And how do I get there? Too Small, Want MOAR! I work in a big enterprise as a Tech Lead in an ““agile team””. So day-to-day I focus on getting our team to build the current feature we’re meant to be building (eg by helping other devs, attending meetings, and sometimes writing code). The next step for my career would be what we call an “Engineering Lead” but I’m having a hard time figuring out what that role actually is and our “EL” is so slammed with meetings I’m afraid to take any of their time to ask… SO - Dave & Jamison, can you enlighten me? What might the goals and life be of someone at that level and how would someone who still codes every day(ish) start figuring out what to do to get there? P.S. It’s taken me about 4 years but I’ve finally managed to listen to every single SSE episode! (I have a kid, binging podcasts isn’t possible for me). P.P.S. In an interview recently I was asked ““What’s the most valuable piece of advice you were ever given?”” to which I replied ““To negotiate for better benefits in job interviews, got it from a podcast called ‘Soft Skills Engineering’””. The interviewer thought that was cool, subscribed to your podcast during the interview then REFUSED TO NEGOTIATE ON ANYTHING! >:( Living in a small town my options as a software engineer have been limited to working for one company straight out of uni for 7 years. Wanting to develop in my career, and knowing you have advised others in the past to move on from their first job out of uni. What is your opinion of seeking out and switching jobs into remote work? Will this provide the same development value found in a traditional job switch, especially after the impact COVID has had on the way companies see remote work.
Episode 258: Addicted to scrolling and underpaid with equity
In this episode, Dave and Jamison answer these questions: Questions Listener “Scrolly McScroll-Face” asks, Hi Team! Love the show. Keep up the great work and congrats on 256 episodes! I think I’m addicted to my phone? Every time my code goes to build, or something I know I need to wait on, I open my phone and start scrolling. 40 seconds later when the build is done, I’m still scrolling. In between thoughts, I also open youtube in new tab fairly regularly. It’s definitely gotten worse while working at home during these times. I’m surely not alone in this slipping of discipline…. I’ve tried to put my phone in the next room and that has some success, but I don’t always remember to do that. Do you have any tips? Anything you’ve seen while managing folks? I love my job and I love the work, so I dont think I’m not engaged enough, and I struggle to see how a different job would engage me more. Hi I am the under-leveled engineer from episode 240, and I want to provide an update and ask a follow up question. I was promoted in this cycle, and because of my shyness I used Jamison’s favorite problem solving technique of doing nothing prior to my review, my compensation in the new level is also underwhelming. Or is it? Comparing my pay with some data point on levels.fyi, my salary is slightly below average. As part of my promotion, I have another equity award, and that is also slightly below average compared to the data points on the site. However, I already have an existing equity award granted to me when I started at my previous level. It is unclear to me if the data points on the site have taken into account for an internal promotion vs an offer extended to an external candidate. If I add in the previous equity awards and my compensation in this new level, then my total seems too be way out of band, on the good side. Digging into it more, there are other sites and blog posts that talk about things like refreshers and bonuses. These are brand new concepts to me since my previous jobs only pay salary, event the tech jobs in middle America. Could you talk about how compensation is structured in the big leagues?
Episode 257: Oops I didn't negotiate and really another raise question
In this episode, Dave and Jamison answer these questions: Questions I’m currently in my first job as a software engineer. Before working full time, I worked at the company as an intern, and during the last few weeks of my internship the engineering manager asked ““We want to bring you on full time. What are your salary expectations?”” Naive me, not wanting to cause any trouble, responded with a very moderate number. They give an offer that was 10% less, but with ““really good benefits,”” so I accepted. Just over one year later, I feel like I’ve proven my value to be substantially more than what I asked for, and I know I’m making 10-30% less than my peers. A couple weeks ago, I had my salary review, and rather than the management being open to negotiation (which is what I had expected going in) they just told me ““You’ll be making 4% more this year.”” After the meeting, I mentioned to my manager that I felt that the raise wasn’t representative of the value that I would be giving the company. He responded that they pay ““Within expected ranges for my job title and experience.”” I was a little hurt by this, because I want to be paid based on the value that I provide, not based on my title or experience. I don’t think I should quit the job, because I get along well with the team, enjoy my work, and they are paying for my master’s tuition on the side. What should I do? Hear ye hear ye, Gods of podcasts, I have a question for thees! I think my salary is ok, £60k (UK) and I’ve brought up the subject of raises a couple of times with my boss (2 years ago and 1 year ago) - both times I was told I’m doing pretty well but they’ll look into it. So far no sign of a raise but I’m not annoyed, I really like my job and the people I work with are great. I’m now on paternity leave and have taken the time to do some interviewing to see what’s out there and keep my skills sharp. Turns out I could earn a lot more! Who knew!? I’m now caught between going back to my boss with these other offers to say ““actually no, turns out I’m not doing great, gimmi more money”” or quitting my job for more money but a potentially worse job… help! How do I say ““more money please or I leave”” but nicely?
Episode 256: No degree ceiling and reverse whippersnappers
In this episode, Dave and Jamison answer these questions: Questions Hiya, thank you for the show. It’s very insightful and both of you are pretty charismatic. Without getting too much into details I had a number of difficulties when I was younger which caused me to never finish my computer science degree. I took a job as a Business Intelligence analyst because I needed to move out. Fast forward a few years and I am now an Engineering Manager for one of the biggest companies in the UK - nearly 2000 engineers and around 100.000 employees overall. I consider myself incredibly successful for my age, just turned 30. I manage two teams(11 and 4 ppl) that are seen as the top performers in the Data Engineering department, and that is credited to my leadership. I’ve always been very self conscious of the degree situation. I’ve tried to finish it online a couple times but I simply can’t find how. I am now being asked to apply to my boss’ position as Senior Engineering Manager, which could mean being responsible of 6 teams of around 10 people average and a sizeable budget. I live in constant anxiety from the possibility of hitting a ceiling or being confronted about the degree situation. While I didn’t hide it on the interview process It’s not something I advertise at all but I got to a point where I just don’t know what to do about it. And so that would be my question: What would you advice for someone in my position? I’m working at a small company where we used to have 2 developers. Both of us had at least 10 years of professional experience and both of us are around 28 years old. A few months ago, our bosses decided to hire 3 new FE devs and all of them come from bootcamp. That wouldn’t be so unusual, but all of them are 35+ years old and have families and basically just 6 months of experience. This causes a lot of friction in our team. We’re trying to “mentor” them in best practices and experience we’ve gained over time, but sometimes they don’t accept it, because we’re just too young for them (in one case 10 years younger). Do you have any tips how to approach “mentorship” when it comes from younger to older dev? And how to overcome the 10 year barrier? Show Notes https://www.simscale.com/blog/2017/12/nasa-mars-climate-orbiter-metric/ https://money.cnn.com/2012/05/13/technology/yahoo-ceo-out/index.htm
Episode 255: Only positive feedback and overworked and siloed
In this episode, Dave and Jamison answer these questions: Questions Hey there! Thank you so much for the amazing podcast. In my current job I work with an incredible (and very strong technically) team, and I like working with my manager a lot. BUT, during all 1:1s, and annual reviews the feedback is always that I am doing a great job and there is never a negative nor constructive criticism. However, I have been waiting for a promotion for more than a year, I never get assigned to the shinier and more challenging tasks/projects, and for the merit review I was put in the “good” bucket (not great, not the best). So, if I am always doing a great job, what else can I do to get this promotion and be trust worthy of shining projects? Jon asks, I’m having a hard time at work. There is so much to do my team can barely spare the time to collaborate on anything. Even when I ask for help, the overwhelming stress usually results in a snarky response. I’ve been working here for a year under these conditions and I’ve learned a lot but we never talk to each other…I feel like I still don’t have the whole picture because I’ve basically never been onboarded. I want to collaborate with my team but either the organizational structure or sheer amount of work is keeping us in silos. Trying to break them down usually lands me in the dog house. What the heck do I do now? I feel like if I stay I’ll only ever get year 1 dev experience, but I also feel like I’ll be totally useless to any real development team.
Episode 254: Code makes my body hurt and level madness
In this episode, Dave and Jamison answer these questions: Questions Hi I just listened to your most recent podcast and you mentioned having gone to hand therapy for what I assume is something like repetitive strain injury. It would be great if you could talk about this, I assume lots of engineers have issues with aching arms and hands. Or, to phrase it as a question “my hands often ache after coding for hours. I can no longer work in bed on a laptop or my hands ache for a few days. what did you find out at hand therapy?” Cheers! I am at a large (non FAANG) tech company. We have salary levels/bands. My entire team was laid off, and I was offered a job that is three bands higher with another team. They said usually they would not hire someone of my level, but since they had worked with me before and I was a heavy individual contributor they were willing to interview me for this senior position. By the end of the process they decided I was the most qualified candidate and offered me the job. They don’t want to increase my level at all. This is displeasing to me. I was the most qualified candidate, why not offer me the higher level as well? If an external candidate was the most qualified, they would have offered that person the higher level. Unfortunately, I believe that since I did not negotiate on my initial offer when entering the company my perceived worth is tied to my compensation and low seniority level. How do I broach that I think this is unfair (or that they should increase my salary)? As additional information, I was given a raise by the previous team’s manager of 20k in January as I found out I was the least compensated on the team by 30k and I got upset at my boss because only about half the team had ever made a commit to any repo and most have no understanding of OOP. Perhaps this is why the team was cut. I feel my company might find it weird to see my salary increase twice in one year and reject for that reason. I feel you’re going to tell me to quit and find another job, but I have worked with the new team and can attest that they are kind, smart, have good engineering practices, and are given a lot of attention because they do AI, so it’s not an opportunity I want to miss out on. Thanks, love your show, it’s like car talk for the 21st century. Show Notes Voice Driven Development: https://www.youtube.com/watch?v=YKuRkGkf5HU Patrick McKenzie’s article on salary negotiation: https://www.kalzumeus.com/2012/01/23/salary-negotiation/
Episode 253: Not coding after 2 years and fake data scientists
In this episode, Dave and Jamison answer these questions: Questions Thanks for the show, I absolutely love getting awkward glances from people when I LOL randomly in public places. I’ve been at my first job for 2 years, including an internship. The work I got to do as an intern was absolutely brilliant and I learned new things almost every day. Then I joined as a full-time employee, and things were good at first. For the past year, things have gone downhill. I barely get to write code and spend most of my time reviewing and writing documents in excel and word. I find this unsatisfying and can barely get the work assigned to me done due to lack of motivation and interest. However, I am fairly convinced that the compensation and other perks I get here, as well as the coworkers and management here are some of the best I could find. Should I follow the soft skills advice and quit, or should I stick around because of the other favourable conditions I mentioned? In other words, how should I decide between satisfying work vs the favourable conditions? Hi, I am a data scientist. I work on a team of about 30 other data scientists. It’s a new team and I have determined after talking to everyone for a few weeks, that about 1/3 of the team does not know Python, 2 even admitting to me privately they lied in the interview, and probably 50-60% have no idea what git is. I feel like they hired a bunch of excel, tableau, business-y people and assumed any experience with data qualified you to do data science. You may say “quit your job” but this is my first job out of college and I don’t think I could find another easily. Do I tell my manager about this? How do I teach them these things? I’ve already had to pick up a lot of slack on the team, luckily since I have no kids, no girlfriend, a ton of free time, and have been coding since middle school it’s been manageable, but I’m concerned about how to handle this going forward.
Episode 252: Impossible documentation and unexcited coworkers
In this episode, Dave and Jamison answer these questions: Questions How do I incentivize people to maintain documentation? Getting anything done at this large enterprise company is a massive challenge because documentation is constantly out of date and people only have half the information needed. So much time gets wasted because people have contradicting knowledge about the status of projects, systems, or requirements. Should I just quit my job or can this be fixed? Greetings! First off, great show - thanks for the countless episodes, most of which result in me getting weird looks as I chuckle to myself while running and listening. I have a passion for technology which lead me to a career in development. I am very often researching new languages and software that will help us do our jobs and/or lives better in my free time. I get excited about these things I find and want to share them with my co-workers but often get rebuffed by them, asking me why I spend my free time “working”. I know I can’t expect everyone to share my enthusiasm and passion for this stuff, but I am finding it discouraging being on a team where this curiosity is not celebrated/encouraged. I love the company I work for and don’t want to leave, but I find myself becoming more and more disconnected from my team because of this. Any suggestions on how I can share my passion with my co-workers is a way that is mutually beneficial to me and them? Thanks, keep up the great work! Show notes Gary Bernhardt’s WAT video from 2012: https://www.destroyallsoftware.com/talks/wat
Episode 251: Working with real live developers and the royal we?
In this episode, Dave and Jamison answer these questions: Questions I’m not a developer, and have never worked with developers. I have four years of systems/IT experience (ansible, bash, python, windows, etc). I got hired in a devops role at a company with many developers. How can I make sure I’ll have meaningful discussions (and a good learing experience) with software developers in my upcoming devops role at a new company? Will they notice that I don’t know what an enterprise communication bus is if just don’t ask but instead scribble something in my notebook? I just watched “How to crash an airplane” by Nickolas Means. It is about how the flight crew of an airplane crashed in 1989 yet saved 189 lives. The learning is that there are no heroes and teams can succeed only with inputs from all members in the team. All opinions need to be heard. And he also emphasizes that the captain used “we” in all his speeches. When it comes to interviews, the expectation is to talk about your personal experience. Using “we” during interviews would look like negative, right? Especially in leadership interviews, this is difficult since leaders are successful only with their team. Can you give us some strategies to balance this the best?
Episode 250: The management track and active listening
In this episode, Dave and Jamison answer these questions: Questions I’m a Tech Lead at a decent sized corporation. If I want to grow towards a promotion my options are a more people management track towards Engineering Lead (basically a TL who also manages 1-2 other TLs) or a more technical track towards Staff TL. Where I’m struggling is I don’t know how I would actually work towards the Staff level, seeing as most of my time is spent wrapped up in mentoring, coaching, planning meetings, and just generally large blocks of time spent on Zoom. Have you ever seen someone move down that path? I worry I would be letting my other responsibilities slip through the cracks by focusing on my own technical advancement. How should I balance what my team needs from me vs. what I need to focus on to get to a role like that? Is the best way to get there 1 step back (to being an individual contributor again) and then two steps forward (working towards Staff Engineer then Staff TL)? Hello soft skills! Love the show and your great banter, keep the laughs coming. Do you have any tips for ‘active listening’? My manager is very, very chatty and our catch ups over zoom often last two hours or more. I find myself drifting in and out while he talks and then need to snap out of it when I hear something that might be useful. How do I keep focused in extra long meetings where we are one on one and the content is not particularly interesting? Thanks! Show Notes https://mediocre.dev/it-takes-more
Episode 249: Settling the Wild West and credit for self-study
In this episode, Dave and Jamison answer these questions: Questions I recently took over to manage development at a small company that has been around for a few decades. We just wrapped up a four year effort to move to a more modern web stack. The development style before my new position is best described as ‘Wild West’. My direct boss’s philosophy can be illustrated with the following phrases: “We are going to have to rewrite it, so just get it out fast.” “Just hardcode the sh*!@ out of it” “It just has to look like it works, but it doesn’t really have to work.” My boss is the co-founder of the company and ran development before me. I have made a concerted effort with my current team to introduce best practices, Unit Testing, PSR standards, APIs and so forth but engagement is really low. I’ve tried every way I know how to get them to care about quality code, tests, standards, etc but they just don’t respond. They are more concerned about getting things out fast which is nice but not my top priority. I’d rather have clean, predictable code that doesn’t break in production. How do I get my team to buy off on these principles? Hi Dave and Jamison How do I communicate all of the self-study that I’ve done to potential employers? I transitioned from a bachelor’s degree in the health sciences to the software industry and I have now worked as a data scientist for a couple of years. I spent a lot of time and effort taking free online classes in mathematics and computer science through Stanford and MIT. Over 3 years I’ve probably done the equivalent of half of a math degree and about a third of a full CS curriculum. And even though I’m employed now, I still keep working on more advanced classes in my spare time. How can I communicate this to potential employers considering that I’m not getting any academic credits for my effort? Should I just leave this off my resume? Is it okay to mention that I have audited those classes? Any other ideas? Thanks for the lovely podcast.
Episode 248: Non-private slack channels and expectations
In this episode, Dave and Jamison answer these questions: Questions Our engineering manager keeps sneaking/creeping on our private slack channels. As an admin of the workspace he can join any private slack channel without being invited. I feel like this is an unacceptable behavior. What should I do? Should I just reach out to him and ask him not to abuse his admin privileges? Should I setup a discord server for me and my fellow developers? Or should I take the soft skills engineering advice and quit my job? Thank you guys for your awesome podcast. I have recently begun my foray into management with the reception of my first subordinate. I selected him due to his illustrious undergraduate project presentation and his ability to expound on the intricacies of said projects. But, I’m having a hard time managing my expectations. He is unable to complete the simplest of tasks, often going off on tangents that, despite being given the answer, result in spending hours in unrelated rabbit holes. Additionally, he asked for a high salary and was promised an increase scheduled ahead of review. As a first-time manager, I worry that I am inflicting unrealistic expectations especially since software is my passion. I enjoy learning learning new languages and technologies. What is the best way to let him know that he is not meeting expectations? How can I say this without my typical brashness which will ultimately result in me blurting out something to the tune of “you aren’t nearly as capable as you made yourself out to be”?
Episode 247: Estimates and hotdesking
In this episode, Dave and Jamison answer these questions: Questions What is your opinion about estimates. Is it a good practice? Are they helpful or just a guess? Should we estimate in story points or hours? How can we improve our estimation skills to be more accurate? I really don’t like estimating. I don’t think it is a good practice because we almost never get it right. The teams that I have worked also almost always made wrong estimates, causing us to miss our sprints commitments frequently. Is it a problem with this practice, or there is a way to improve it? I heard about the Kanban method, that don’t use estimations, but metrics, to give predictability. What do you think? Hello Soft Skills Audio :) Love the show and the great advice, I look forward to the show every week. I just joined a company that embraces hotdesking and I’m having trouble feeling like I am part of the team. All the engineers report into the head of engineering but we work on different projects. I work with one other engineer who works remotely from another state, and take direction from the product owner who works from another. The culture of hotdesking across five floors of a multistory building means each morning I end up circling around hunting for a place to sit. Because anyone can sit anywhere, I could be sitting next to someone new from sales, marketing, finance, or engineering everyday. Everyone always looks hard at work with headphones on and our organization chart doesn’t feature profile photos. I’ve tried introducing myself to the people I find myself next to but it’s just small talk and I never see them again as everyone shuffles around. I’m sick of sitting alone at lunch and missing out on “watercooler” conversations. How do I make friends and figure out how I fit in with an office environment like this?
Episode 246: Humanitarian salary conundrum and family benefits
In this episode, Dave and Jamison answer these questions: Questions I listen to the show while I’m working out and wanted you to know I’ve almost dropped the weight on myself multiple times when one of you cracks a funny joke (which is often, I’m learning to be more careful)😂. I work for a growing startup as a dev manager. Hiring has proven to be one of our most difficult challenges. We had one candidate in particular that would qualify as a potentially “Risky” since they lacked experience in our industry. We ended up hiring them because their salary requirements were so low, they were half of what we pay other junior engineers. They quickly proved be miles above the Junior engineer position. They have strong technical skills, are proactive with resolving problems, and have raised the bar for the entire dev organization. They currently meet all the criteria for what we would qualify as a Senior engineer at our company. I’ve started feeling uncomfortable about how little we are paying this person. I’ve brought this concern up with management, but their take is that if they asked for the little amount that they did, then we should leave them at that for as long as they are comfortable there. The part that takes this to a whole new level of humanitarian concern for me is that, in passing, I found out that this person is trying to get approval for adoption and that is why they had to leave their consulting background and settle for a salary job. I’m familiar with the adoption process and if we were paying them what they were actually worth (or even 25% closer to what that number is) the entire process would be different for them. I want to take care of the company, but I also believe that we should pay people what they are worth. What should I do? I’ve recently joined a new company (hoorah!) and even more exciting, I’m engaged (double hoorah)! Previously, I’ve focused heavily on my career progression and decided what a good job for me was based on my selfish reasons (more pay). Now, my priorities are shifting towards family first and I’ve been looking into any parental benefits the company may offer (unfortunately none). Is it worth looking around for a company that will provide better parental leave benefits and child-care days?