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

Soft Skills Engineering is a weekly advice podcast for software developers.

The show's hosts are experienced developers who answer your questions about topics like:

  • pay raises
  • hiring and firing developers
  • technical leadership
  • learning new technologies
  • quitting your job
  • getting promoted
  • code review etiquette
  • and much more...

Soft Skills Engineering is made possible through generous donations from listeners. A heart with a striped shadowSupport us on Patreon

A speech bubble

Why should you listen?

Here's what listeners say:

Recent Episodes

Latest Episode

Episode 516: Not a baby and my product manager doesn't know the product

Download

In this episode, Dave and Jamison answer these questions:

  1. My company follows scrum, with daily standups. We got a new scrum master. He is very formal and procedural and I struggle with our daily meetings.

    He goes through a long list of assigned tickets, asking each ticket owner about status and info on progress. We are all engineers with many years of experience but it feels like we are in the kindergarten. We don’t have deep expertise about each others work. It is important to know what each of us is doing more or less, but going deep in these issues makes me disconnect, and I think these meetings are above all very good to signal blocking points and ask for help. A recitation of tickets and work being done is not their purpose. On top of that, most days it takes 25-30 mins to go through all the issues.

    Am I being difficult complaining about this? I tried to be polite when I raised the issue but I was told more or less that this way is better for the company. Is it common in the industry to go through dailys like this?

    Thanks a lot, guys, you do great work and I look forward to the SW/industry podcast that makes me laugh the most!

  2. Hi! Long-time listener here, I remember Jamison mentioning this podcast on JS Jabber and I’ve been listening ever since. Best part of my week!

    In my current organisation I have a tech lead role on a small, internal platform team. Our “customers” are mainly other engineers. Due to several re-orgs, I have over the years worked with a number of Product Managers and Engineering Managers who have all had one thing in common: they don’t understand the technical domain we work in very well. You could say we have “Product Managers” who do not understand the “Product”.

    At the same time, these people are expected to interact with stakeholders, set the platform vision, manage the roadmap and backlog, prioritise risks, write documentation, do demos, etc. In the end, a lot of this work falls through to me. I do the work, but have also received negative feedback from my skip level that I need to do a better job keeping the product manager and engineering manager in the loop.

    I just got a new EM and am heading into our first expectations setting meeting. How can best express that my expectation is that the roadmap for a technical platform team should be managed by someone technical? Do you think product managers have a role on internal platform teams?

A smiling speech bubble

Episode 515: My junior team member won't listen to me and will I be the dumbest employee at a quantum computer company?

Download

In this episode, Dave and Jamison answer these questions:

  1. Hi from a long-time listener and first-time caller. I need some advice on a toxic workplace situation.

    I’m currently unhappy with my job due to a difficult dynamic with a colleague. My manager put us on the same team, meaning we share responsibility for our output. Although this colleague is technically a level below me, they act as though they have seniority. This creates significant friction: they’re resistant to advice, insist they’re always right, and refuse to accept reality even when they can’t deliver what’s required. They’re incredibly stubborn, and arguing with them about what’s feasible takes an excessive amount of effort.

    The situation is particularly frustrating because I’m held accountable for the shared results. If I weren’t responsible for the final outcome, I could probably just ignore their behaviour. Instead, they frequently talk a big game while contributing very little actual work. People unfamiliar with our domain are easily misled by their confidence, even though they are incompetent. Consequently, I’m forced to clean up their mess; otherwise, I’d be the one bearing the blame for the failure.

    I tried discussing this with my manager, but unfortunately, it made me look bad rather than resolving the issue. If I were the manager, I’d fire this person immediately, but my manager is clearly one of those people who get fooled by their smooth talk. I’m very close to handing in my notice, and let the manager know how incompetent this person is. But I’m furious that I feel I have to give up a role I enjoy just because of someone who makes my life miserable.

    My question is: Should I stick it out and try to navigate this politics-heavy environment, or is walking away the only option left? How do I leave without burning bridges or letting them win?

  2. Hello gentlemen, long time listener of the show and finally getting around to asking my first question (how exciting!)

    I’m going to be joining a new company in a few months and am wondering how to best handle the transition in order to make an excellent first impression and maybe set myself up for career growth… while not biting off more than I can chew.

    For context: I’m joining a company that builds QUANTUM COMPUTERS 🤯 after a background in working in completely different, non-scientific fields. To be fair I’m just joining as a Senior Software Engineer on the Cloud team, I won’t be building the actual computers.

    I have some experience in leadership, but not nearly as much as I wish I had, this is something I’d love to try and get into a little bit more (and couldn’t at my last company which was too small). I’m also a little intimidated at the idea of stepping into the “big leagues”, but want to use this opportunity to show that, I too, can ball.

    However, I am worried that everyone is going to be waaay smarter than me and that I’ve actually been playing in the ball pit for years.

    I’m a little scared of attempting to ball too hard and fumbling, causing dissapointment on their end, and impostor syndrome on mine.

    How would you go about joining a new company with the excitement of a new start and the drive to be the best I can be, while also remaining humble and grounded in reality?

    Should I “fake it t’ill I make it” and be super confident? Or take a more reserved approach?

    In France we call this a “rich person problem”, everything is great because I have a cool new job, but I don’t want to mess it up! HELP!

A smiling speech bubble

Episode 514: Trust issues and underperformers and my coworker resents me for being faster

Download

In this episode, Dave and Jamison answer these questions:

  1. My parent organization has trust issues: we registered on a recent survey as one of the lowest across the bigger software org (thousands of employees).

    There are two groups: functional, trustworthy people who get stuff done, and people who are behind, stuck, or just not working. Those struggling say they need better emotional support, but there is consistent, documented evidence that they cannot keep up.

    I’m perpetually frustrated that there are only two or three people in an org of 30 who can effectively complete tasks and manage the insane workload. I am biased: those in whom I have no trust have repeatedly demonstrated that they cannot be trusted. I believe that the organization would be able to go faster without them.

    Whats the right answer here? Should I start my own company to abandon this mess? Do we cut scope super aggressively to allow underperformers to be reasonable contributors?

    One example: one of these contributors was walked through the process, given written documentation of the process, verbally confirmed an understanding of the process, and committed to starting that day. And then two days later identified they hadn’t started for those two days because they were blocked by something that was explicitly captured in the document and discussed in the recorded meeting. They do not raise this until they were asked for their progress multiple days beyond the critical start date.

  2. Hi Dave and Jamison,

    First, thank you for the podcast. As someone on the spectrum, it really helps me analyze social situations I struggle with.

    My question: I work at a software company where management is pushing the use of LLMs for coding, and my team recently started using Spec-Driven Development. SDD often requires strong upfront planning, which has quietly split my small team between developers who plan well and those who get lost in “vibe-coding” loops.

    One of those people is a close coworker I consider a friend (we hang out after work and have honest chats about everything). He’s not strong at planning, so I end up explaining each ticket to him in detail. But he’s really great in other ways: communicative, asks a lot of questions in refinement sessions that set a good example for others, does thorough handoffs with the QA team, always responsive in chat, always trying to help. He’s also one of the rare people who actually pay attention to alerts.

    Since we started using SDD, the gap in our speed and output quality has become very visible. One of our tech directors noticed and asked me to teach him planning. We spent several days drawing schemas and working through small features together, and it was clearly painful for him. The TD also had his own sessions with him, but eventually gave up because my friend seemed so discouraged, and the TD decided to “stop the torture” and leave him alone. The hard part is that after all these teaching sessions, he actually seems even slower than before and also more discouraged and down.

    Since then, our friendship has changed. He stopped talking to me outside work, and I think he now feels jealous or bothered by the difference in our performance. I’m okay with continuing to explain tickets and outlining detailed execution plans for him, but I worry that I’m keeping him in his comfort zone and not really helping his career. And I also miss how things used to be between us 💔

    What should I do?

    P.S. I’m not an LLM fan or enthusiast, I take a practical approach to using them. But I hate how they’re taking jobs away from devs who really love coding but are weak at planning or not interested in it. It doesn’t feel fair.