It takes more than great code to be a great engineer.

Subscribe Now Support us on Patreon

Soft Skills Engineering is a weekly advice podcast for software developers. We answer questions about all the stuff you didn't realize you needed to know about being an engineer:

  • pay raises
  • hiring
  • going into management
  • annoying co-workers
  • quitting your job
  • meetings
  • micromanagers
  • installing a ball pit in your office
  • and much much more...

For answers to these and other questions, our hosts Dave Smith and Jamison Dance are here to help.

Why should you listen?

Soft Skills Engineering listeners are awesome. Here's what they are saying about the podcast.

Jack says:

Not only did Soft Skills Engineering help me land my first gig, I also used your advice to negotiate a $10,000 raise! I love your podcast and will continue to heartily recommend you to everyone I know!

Hdennen says:

Facing a 9 hour drive, I grabbed a bunch of podcasts to listen to. I don't even know what the other ones are. Seriously, this podcast is full of massively helpful and relevant content from two people who are experienced, funny, and insightful.

Saad says:

Listening to Soft Skills Engineering has completely shifted my thoughts on what it means to be an engineer. It’s probably one of the more useful things I’ve gained during my time at Amazon. It definitely helped me grow, and I’m totally indebted to you for that.

Follow the show

Follow the show on social media for the latest news:

Facebook: https://www.facebook.com/SoftSkillsEng/

Twitter: https://twitter.com/SoftSkillsEng/

Recent Episodes:

Episode 159: Rejecting candidates and corporate image obsession

Download

In this episode, Dave and Jamison answer these questions:

  1. I’m a hiring manager and sometimes have to say no to candidates who interview with us. How do I reject them kindly?

  2. In my current company, they only care about reputation of the company. They don’t care about their employees or values, they prefer to invest in other things. One time the CEO asked everyone in the company to create fake accounts in order to vote for the company for an Award. By the way, we received the award. But I don’t know how to feel about this company non-existing values.

Episode 158: I accepted a counter-offer and stayed and dealing with engineers who exaggerate their contributions

Download

This episode is sponsored by the O’Reilly Velocity conference. Register today and use discount code SKILLS for a 20% discount: http://velocityconf.com/skills.

In this episode, Dave and Jamison answer these questions:

  1. I was unhappy at my job despite having a great manager, so I started interviewing around. Then my manager helped improve things considerably, but I ended up getting a job offer that was for a much higher amount than I’m currently paid. My company gave me a counter offer that I accepted, but now I feel like I somehow betrayed my manager and don’t know how to stop feeling guilty. How do I come back from a touchy salary negotiation incident like this and make things feel like they’re normal again?

  2. Compared to a smaller company which I used to work at, this new big company I’m working at seems to require more storytelling around the work that I do. I see people getting rewarded for exaggerating the effects of their work and being excused for their missed deadlines when they complain and blame the codebase. I hate to play this kind of game and would rather divert my energy on improving as an engineer and getting more code written. </rant>

    With all that said, I do understand the need for this and think it’s a valuable skill.

Episode 157: How to deal with a consistent low performer and my architect wants me to switch from Ruby to Java

Download

This episode is sponsored by the O’Reilly Velocity conference. Register today and use discount code SKILLS for a 20% discount: http://velocityconf.com/skills.

In this episode, Dave and Jamison answer these questions:

  1. I became a manager a year go. I took over someone as my direct report who was not performing well at the time. On my first day, I gave a motivational chat to welcome him again to the team and continued to motivate him. But after 1 year, he is not improving at all. I give him clear feedback and set expectations but he just doesn’t change. This got to a point where it is stressful for both of us. And since I spent so much time on just for this issue, I fear that it adds to the stress and may affect my decisions. What should I do?

  2. I’ve just join the company as a Ruby/RoR developer. After half a year the architect presented new way of developing the product and said that from now all new features will be writen in Java/Spring Boot and we switch to micriservice architecture. But I don’t like Java, don’t want to switch (I have 6 year expirience with Ruby), what should I do?

Episode 156: How to move from web development into other software engineering roles and dealing with slow code review processes

Download

This episode is sponsored by the O’Reilly Velocity conference. Register today and use discount code SKILLS for a 20% discount: http://velocityconf.com/skills.

In this episode, Dave and Jamison answer these questions:

  1. Hey! I love your podcast, you have definitely helped me improve my soft skills in my career.

    I am a full stack web developer and I have been pretty much loving it. Web development was not my original career plan though, I graduated with a Bachelor’s in Computational Mathematics & Computer Science, and I knew I wanted to be a software dev since working with robotics in middle school. I kinda fell into Web Development from my IT work study job in college.

    I have been doing this for 4 years, and I am ready to transition over to applying for Software Engineering jobs. How do I get over this scary feeling of leaving my safety net? How can I encourage myself that I can make this new career transition? There will be jobs I see posted, and I just wanna go for it, but I always get scared at the thought of leaving since it’s just so intimidating, especially coding interviews and interacting with new people, new workplace, etc. What if I end up regretting my choice? Any advice is appreciated!

    Thanks guys! I always look forward to your episodes every week - I share your podcast with my fellow nerd friends!

  2. I work at a bureaucratic company where we move fairly slow. Recently, I’ve been getting more and more frustrated with our code review process, but I’m not sure if this has to do with my quality of code.

    It can take weeks for one of my pull requests to actually get merged. Someone will review my work, I will make some changes, then they will come back some days later with a new truckload of very nitpicky details that they want changed.

    This makes me long for the days of me working at a startup where we had no code review, and no testing process, and it’s making me sad. How do you draw the line over what is reasonable code review and what is too much?

Episode 155: What do you think about employee monitoring software and how do I get un-demotivated after losing interest in software dev?

Download

This episode is sponsored by the O’Reilly Velocity conference. Register today and use discount code SKILLS for a 20% discount: http://velocityconf.com/skills.

In this episode, Dave and Jamison answer these questions:

  1. Hello! Thank you for the show!

    What do you think about employee monitoring software? I received a message from a company about a job position and they use such software. It seems weird for me to make screenshots on my computer and to see what software I’ve use and what websites I’ve open. How do you feel about it?

  2. I’m a software engineer with about 2 years of professional experience. When I started working, I was motivated to learn all the things. I consumed technical blogs and podcasts in my personal time and proactively identified and solved problems for the team.

    Things recently changed. I can’t bring myself to care about work anymore. Curiosity used to come naturally to me but I can no longer summon curiosity about anything related to software development. A few things lead to this. 1) I got a lower than expected rating on my performance review due to an issue with my soft skills. I thought the feedback was valuable but didn’t think such a rating was warranted, considering my overall contributions. 2) Our team has spent the past few months writing code that didn’t ship. 3) I took the Soft Skills Engineering advice and got a new job. In order to do that, I spent many mornings and weekends preparing for technical interviews. After accepting the offer, I felt totally burned out.

    I very much want to be back to my previous, curious self by the time I start my new job. Unfortunately, I can’t take a long break before the start date. How can I get to a place where I feel motivated again?

Episode 154: Why am I terrible at picking candidates and how soon can I quit my job?

Download

This episode is sponsored by the O’Reilly Velocity conference. Register today and use discount code SKILLS for a 20% discount: http://velocityconf.com/skills.

In this episode, Dave and Jamison answer these questions:

  1. I keep getting asked to interview new candidates. But my interview feedback history is pretty bad. I’ve said yes to hiring:

    • Someone who’s super smart, but drives me absolutely crazy with constant argument and may cause me to take the time-honored Soft Skills advice and quit my job.
    • My boss at my former company, who DID drive me to quit my job.
    • My first (and only) hire back when I was a people manager, who turned out to be terrible, but I was told I had to keep him around because “it would look bad” to fire my first hire.

    What should I do? Is it acceptable to just keep turning down interview requests? I’ve wandered into a tech lead position, so I suspect I can’t dodge them forever. But I don’t want to keep suggesting bad hires just for the sake of getting more interview practice.

    Thanks for all the advice and the laughs! I’ve been a regular listener for a couple years.

  2. How long do I need to wait before bailing on a new job I don’t like? More than a month? It’s not totally miserable: the people are nice and the company has good prospects. But the technical decisions of the team lead to daily frustrations for me.

Episode 153: Informal Leadership and Dealing With Burnout (rerun of episode 71)

Download

This episode is a rerun of episode 71 from August 2017.

In this episode, Dave and Jamison answer these questions:

  1. I’m sometimes an informal lead on project teams. How do I help the team get stuff done as a peer?
  2. How do I deal with burnout after an extended period of crunch time?

Jamison mentions the blog post by Jamis Buck called To Smile Again where he talks about his experiences with burnout.

Episode 152: How to pair program as an introvert and being mistreated as a contractor?

Download

In this episode, Dave and Jamison answer these questions:

  1. Hi guys! Big fan of the show. Here’s a question: What to do if I hate working in pairs?

    I’m in a tricky situation. I work on a great project in a team of great people We try to implement all the good programming practices. Retrospectives, cross-review, working in pairs..

    I hate working in pairs. I am a typical introvert-programmer and the thing I like the most about programming is that you can sit all day digging around the code and NOT communicate with the people. Or at least not all day. But how can I say that to my teammates? “Hey, I would rather work alone than talk to you guys.. By the way, love y’all!”

    It seems impossible to communicate that to my co-workers without hurting them. And moreover, this is a good practice. Which makes me feel horrible because I feel super-tired after whole day of talking to people. Plus I also feel like somehow I take up their worst qualities: if the person is slower, I become slow too, or start making mistakes. Help!!

  2. Hey guys, big fan of the show here. Thanks for your advice and time.

    The company that I work for provides “tech teams” for hire. In other words, American companies that want to outsource part or all of their tech team to a cheaper location can hire us and get developers and PMs at a fraction of what it costs in the US.

    I ended up working with an established fitness company based in NY. Their management insists that we are “regular” engineers in their tech team and we should participate in their technical discussions, agile meetings and so on. However, their engineers seem to be on a completely different page and treat us like monkeys that can write some code.

    For the most part, I can deal with their condescending treatment and everything else they might throw my way. The problem is that the company is currently in a very intense project and they are all “stressed” which seem to provide them license to be extra rude BUT ONLY TO CONTRACTORS. Their managers brush everything under the excuse of stress but I’m sure that wouldn’t fly if we were “regular” team members.

    How would you handle this situation? Any advice before I lose my temper? I’m also afraid that getting rid of a contractor is much much easier than firing an actual employee.

Episode 151: Where are all the old developers and Do I not ask enough questions?

Download

In this episode, Dave and Jamison answer these questions:

  1. I have a lot of software developer colleagues who are 20 - 35 years old but none 50+. At what age does a software engineer’s career end?

  2. Hi Dave and Jamison, thanks for the great podcast.

    I recently started a new position on a small remote team.

    The co-founders are increasingly dismayed by my lack of Slack-question-asking, although I have reassured them that I’m not too shy and I will ask when I’m stuck. I have daily one-on-one meetings with one co-founder, where I do ask questions about the code base, story requirements, potential side effects of my solutions etc. It’s an open-source project with comprehensive and Googable developer docs, so between those and my debugger I can figure everything else out with a bit of research.

    A co-founder told me that he expects to see me asking one or two questions per hour, and strongly implied that I need to do this if I want to survive my probation period. I was actually let go from my last job at the end of my probation period due to “brisk communication style” and “not asking enough questions”, so I’m freaking out now.

    I don’t want to annoy my colleagues with a constant stream of inane RTFM-style questions, but I’m stumped on how else to hit my question target! Can you help me come up with ideas? Is there some big picture reason for this obsession with question-asking that I’m missing?

Episode 150: How to fight imposter syndrome as a technical lead and Getting in to meetups

Download

In this episode, Dave and Jamison answer these questions:

  1. I worked for four years doing web development for a company while I got my degree, and loved it. I eventually became the lead developer because I had been on the team the longest.

    I thought it was really cool. I worked with the team to make organizational tech decisions, trained new hires, held regular meetings to discuss projects. After about 6 months, though, imposter syndrome started sneaking in and I felt like I was making things worse, not better. I figured the team needed someone who actually had senior level experience, and the pressure was getting to me. So I bailed.

    I’ve since had a few people approach me and say they want me to join their early-stage startup in a technical leadership position. I haven’t outright declined, but I’m nervous about being put in a position where the stakes are even higher.

    My question is if the pressure of being responsible for everything ever lessens. Is it something that gets better as you get more experience? Is everyone in technical leadership feeling this pressure and doing a good job to hide it? What can I do to gain the confidence to eventually lead another team?

  2. How do you step into the meetup scene? I have not attended one before, but the idea of them is interesting. However, there is this feeling that I would not fit in due to inexperience.