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 414: Hot-headed PM and leaving without downgrading

Download

In this episode, Dave and Jamison answer these questions:

  1. Cool-headed engineer asks,

    How do you deal with hot-headed project managers? I have a project manager in my team who really likes to criticize me, a project lead. Most recently, I was criticized for asking a dumb question to the users which they already answered a few months ago. They told me that I should check with them for all the questions going forward. (think: “Why did you ask that question?! Don’t you know that they already answered that?! Look at this message here: . Their intent is clear. Please check with me for all questions going forward.")

    It’s not the first time they scolded me either. They tried to pressure me to push the timeline even though I explained why it wouldn’t be possible. They made a false equivalence by comparing it to a similar sounding project that’s completed very fast but, unbeknownst to them, is very different to mine. (think: “Why was that project completed in three month but you need six?! Those engineers are working on the same code too. Please accept that you are not a strong engineer.”)

    I am demoralized after each time they scolded me. It’s my fault to an extent, but I think the criticism is too extreme compared to the mistake. I feel like they just want to let off some heat after their strong discussions and furious meetings with other people. I’m also a frail person and break easily; I want to learn how to handle hot-headed people and extreme criticism better so I can better speak for my team and not acquiesce to all their demands.

  2. Hello! I’m really fortunate in my current company. I have a great team, great workload that’s challenging but doesn’t destroy my work-life balance, and plenty of pay, benefits, and recognition. I feel this comes from having a really small group of proactive devs, and software is the primary source of revenue at this company so engineers are highly valued and appreciated. It really is the perfect place to be in.

    But I’m also really early in my career and I don’t expect or want to stay here forever. I’m coming up on my fifth year, and I’d prefer not to stay for more than 6-7 years because I want to continue diversifying my career. I know I’m leaving for the sake of leaving, but the reasons are sound in my head. All the past companies I’ve worked for have been decent but have been soured by being around 9-5 “That’s not my job” cruising devs, or upper management who say “Customer wants it tomorrow so just write the codes”. I don’t want to risk going back to that. What are some ways I can scope out a company during the interview process to figure out what their real culture is like?

A smiling speech bubble

Episode 413: Is my interview candidate cheating and my product owner is getting WRECKED by the client

Download

In this episode, Dave and Jamison answer these questions:

  1. This is my first time conducting technical interviews (most of which have been virtual), and I had one interview where I had a strong feeling that the candidate was cheating. They breezed through the short problems I gave them, and they were able to explain their reasoning. But during the live coding problem, they sat in silence for five minutes, and when I asked them what they were thinking, they didn’t respond. Then they started cranking out perfect code without explaining anything.

    How do you address cheating in interviews? What if it turns out to be just nerves? I don’t want to assume anything, but I also wouldn’t feel comfortable confronting them about it either.

  2. I work as a team lead for a small group of 4 other devs. Our Product Owner is currently handling the requirements for new features to onboard a new large client. This involves them attending client meetings and generally isolating the development team from client shenanigans which is normally great, but it’s becoming INCREASINGLY obvious that someone on the client team has his number and he’s getting HORRIBLY out-negotiated. This has resulted in a bunch of missing requirements, changing requirements, last minute feature adds, and general confusion. I’m trying to push back, but the leadership team is coming back with “Well we promised…” and my entire team is stressing out. Note that this is AFTER we were already pressured to overcommit on capacity to get these “absolutely necessary” features developed for the client to go live.

    I like my PO, he’s a good guy and normally does good work, what can I do to help him stop from getting his butt kicked in these meetings?

    (Note: the POs are neither above nor below us in the org tree, our closest shared higher-up is the VP and I obviously don’t want to escalate it that far)

A smiling speech bubble

Episode 412: Work-life-team balance and getting code-sniped

Download

In this episode, Dave and Jamison answer these questions:

  1. Dear Skillet HQ,

    How would you negotiate a difference in work-life balance between teams?

    I love my job and my immediate team. We’re a tech group within a larger non-tech business, and it’s a fun problem domain.

    Our immediate team has some hard-won work-life balance, in part because it would be hard to hire anyone for the role if that balance wasn’t part of the equation. However, I worry about how to communicate differences when anyone we work with - all the people we’re building software for! - have an unbalanced schedule, because, 👋that’s show-biz 👋

    I even understand why other people have their role set up that way and respect it, but I don’t want to give up my balance either.

    How can I best handle the relationship when that difference is there?

    Love the podcast and the skillet-slack! Thanks for the advice, empathy and good humor.

    Tex Archana

  2. Listener Frustrated asks,

    My work keeps getting stolen in the name of code quality!

    I’m a new backend developer for a team at a large company. I’ve been with this team for almost 3 months now, and the company for over a year. We’re developing an application to replace a legacy system, and the current feature has fairly well described user requirements. The front end developers keep finding new implementation issues that require more backend development, so new tasks get added during the sprint. The longest tenure developer (LTD) on the team keeps finding better ways to implement these backend changes, but these ‘better’ ways sometimes don’t meet the newly discovered frontend needs, leading to longer development times. Additionally, the longest tenure developer often takes over the implementation work from me, which is frustrating! The longest tenure developer also sometimes becomes too busy to deliver everything in a timely manner!!

    Additionally, the state of software development maturity is very low, so I’m trying to advocate for more technical process improvements like CICD and using version control more than once per sprint! I am frustrated and finding it hard to keep up motivation when everything is such a mess, and the other devs defer to the longest tenure dev who pushes back on many of these things.

    My code quality is fine, but I haven’t yet learned enough about our application to be able to identify these larger, cleaner approaches. Every code review so far has had no issues with my code quality, but inspires the longest tenure dev to implement a simpler solution, and they often will take my tickets and repurpose them for the new work! I’m worried that if anyone looks at productivity metrics they’ll not look good for me, and it’s hard to say what I’ve accomplished so far.

    Is my frustration valid? Should I quit my job?