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:

  • navigating pay raises
  • hiring and interviewing
  • deciding to go into management
  • dealing with annoying co-workers
  • quitting your job
  • managing meeting creep
  • 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.

Saad says:

I owe you a lot, listening to Soft Skills 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. I kind of brushed this stuff off, considering some of it politics, and the rest unimportant, but boy was I wrong. It definitely helped me grow, and I’m totally indebted to you for that.

Recent Episodes:

(Rerun) Episode 35: Attracting Talent and Quitting Responsibly

Download

We’ve got another re-run this week, as Jamison and Dave both recover from being sick. We’ll be back with a new episode next week.

In this episode, Dave and Jamison answer these questions:

  1. How can I attract talent?
  2. How do I quit without burning bridges?

This episode originally aired on November 15th, 2016.

Episode 108: An Insecure Teammate and Disclosing Past Ratings

Download

In this episode, Dave and Jamison answer these questions:

  1. What do I do about an insecure teammate whose insecurity causes them to lash out at others?
  2. I’d like to change teams within my company, but I’ve had some negative performance reviews in the past. How early should I disclose this to my prospective manager?

Jamison talks about the Khan Academy Engineering Principles, which are great and which you should read.

(Rerun) Episode 40: Office Visibility and New Tech

Download

In this episode, Dave and Jamison answer these questions:

  1. How can I encourage my team to be more visible in the office?
  2. How do I learn new technologies without going through a noob phase?

Episode 107: Silence After Interviews and Newsletter Politics

Download

Dave and Jamison answer these questions:

  1. I recently interviewed for a role I was very interested in. I didn’t get the job,and despite several attempts, didn’t receive any feedback on what I could have done differently. I still really want to work there at some point in the future, but have I taken it too far? Have I accidentally burned all of the bridges before I set foot on them?
  2. I am a lowly SSE that recently started a tech newsletter at my company. One of the senior VPs (let’s call them “E”) sent out an email to the org asking people to reply to a newsletter survey so that their team can be featured. A senior manager (“K”), was upset his team wasn’t featured but I informed him that he didn’t reply to the original survey. I explained to “K” that he can still send me information for the next issue. “K” then replied back with something very condescending and has now made the newsletter a political device. How should I proceed from here?

Episode 106: Working From Home Without Rotting and Meetup Etiquette

Download

Dave and Jamison answer these questions:

  1. Since working remotely I’ve noticed a trend to do things like not leaving the house, growing my beard out to above average length, or not wearing (real) pants. What should I do to keep from losing any/all interpersonal skills?
  2. Is there such a thing as meetup etiquette? When I attend meetups and attempt to initiate conversion with people, I’m hesitant to interrupt people who are in discussion with others. Should I wait, try to join the discussion or just barge in on the conversion?

Episode 105: Interviewing for Management and Annoying Noises

Download

Dave and Jamison answer these questions:

  1. I’ve been a software engineer for 13 years and would like to apply for a management role. I’ve never managed before. How do I apply for a job as a manager without managerial experience?
  2. How do I deal with annoying noises around my desk? One neighbor listens to loud music. Another one pops the bubbles on his bubblewrap (to calm himself obviously but also infuriate me). Please help =)

Episode 104: Interviews With VPs and Hiring a Tester

Download

Dave and Jamison answer these questions:

  1. I went through the interview process, and as last step I had an interview with the VP of engineering. At the end of interview he asked if I had any questions for him. I didn’t know what to ask. What do you ask?
  2. I’m a front-end web developer on a SCRUM team. Our Product Owner is also our tester, but she has a very busy schedule and she hardly has any time to test anymore.

    My team thinks we need a second product owner, but I think we should hire a dedicated tester to help the PO. How do I convince my team and my manager to hire a tester instead of a second product owner?

    We don’t work with scripted test plans or anything, so I think a dedicated tester would be a huge benefit to our team and our deliverables.

Episode 103: Team Dynamics and Bad Code

Download

A listener named Dan talks about ThanksBot, an internal tool at Facebook to support gratitude.

Dave and Jamison answer these questions:

  1. I became an engineer because I loved my programming assignments and CS degree. However, at work I’m struggling to contribute beyond competing the tasks assigned to me. How do I participate more in broader technical solutions, process, etc?
  2. I recently started a new job, and a lot of the existing code is really bad. How can I raise this concern, or make improvements to the code, without offending my teammates who wrote it? Thanks!

Episode 102: Correcting English and Tyranny of the Urgent

Download

Dave and Jamison answer these questions:

  1. A teammate is a great developer but English isn’t their first language. Sometimes this results in bad grammar or spelling mistakes in code comments, variables, and method names. Often I correct it in code review, but I sometimes feel like I’m nit-picking, although I really do want it changed to be correct. It slows down code reviews. And of course, I don’t wish to appear racist or discriminatory. Any ideas for solving this?
  2. This is my first job out of college. Been there for 2.5 years. It feels like my manager is always firefighting and not able to be proactive, trapped by the tyranny of the urgent. It feels like our group is always behind on deadlines trying to catch up and we’ve accrued large amounts of technical debt with little to no time spent on improving our processes or tools. The result is that we produce a worse product and documentation than we should. This causes additional support required down the road further loading down the group. What can I or my manager do to improve this situation? Is this more common than I think?

Read more about the hairy arm principle and the fun memory tricks that game developers pull.

Episode 101: Style In Code Reviews and How To Thank My Manager

Download

Dave and Jamison answer these questions:

  1. A fellow developer submitted a pull request for me to review. The logic was totally fine, but the spacing drove me nuts. We use a linter to enforce some coding style but because this wasn’t a rule in the linter, I wasn’t sure if it was fair game to call him out on it. Was I being petty? I knew if this got into our code I would end up fixing it later myself. I told him I would approve the PR but thought that spacing should be more readable and consistent with the rest of the codebase. What is the proper etiquette here? Mention it and add the rules to the linter later? Don’t care about spacing if the code gets the job done?”
  2. How do you express gratitude to your immediate supervisor? My immediate boss, who is lead engineer for our team, does an amazing job. Occasionally I get to peek into his world and see how much work he does. I am amazed at all he does for the team; shielding us from company politics, keeping us updated on relevant info, dealing really well with team drama and even makes time to contribute to code. How do I show gratitude besides building meaningful software?

I recently read a paper on coding style and how it survives even through compilation and optimization!