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 299: Neophyte estimates and forced framework

Download

In this episode, Dave and Jamison answer these questions:

  1. I’m a new team leader running a new project and when asked for a delivery date I gave my best guess (noob!). That date is at hand, our project is not. I gave a new delivery date and you guessed it, it’s later than the date I said way back when.

    I presented this new date to my boss, but he wants us to deploy what we have now… even though if we deployed what we have now the business’s cash flow would ignite tearing our collective hopes and dreams asunder. I told him this, in those words, and he said (with a knowing look) “ahhh, you’ve got to play the game, you have a reputation to protect”. I said I’d prefer a reputation of honesty, accuracy and improvement. He said he was talking about his reputation. His other teams consistently miss delivery dates, so I’d guess he has a reputation of missing delivery dates.

    I’d love to share my more accurate date, but that now feels like going behind his back, but if I don’t go behind his back - I’m going to get stabbed in my front. For now I’ve settled on putting my new date in confluence so I can use it as a shield when the inquisition comes. Dave, Jamison, what would you do and why?

  2. A parallel team has sold our VP on their internal framework, and has the VP convinced all other groups in his org should become dependent on it as a multi-app, multi-platform solution.

    Their framework is very buggy and they are very slow to acknowledge and fix bugs. They claim that due to the overwhelming amount of users/adopters of their framework, they can’t look at bugs, or that other projects take priority. This blocks our development. No one except them wanted to use their product, and somehow they used forced widespread adoption to avoid responsibility for missing their deadlines. This group has magnificent soft skills that have allowed them to evade being accountable for their issues.

    This team is a darling to the VP, so they are immune to accepting our feedback for the points I listed in the above question.

    How can we, who are multiple levels removed from this VP, improve our situation? Our group enjoys working together and on our product, so we don’t want to leave. We just want to find a way to become more tolerant of this other underperforming team.

Show Notes

  • https://www.hillelwayne.com/post/we-are-not-special/
A smiling speech bubble

Episode 298: Thanks, and goodbye and fessing up

Download

In this episode, Dave and Jamison answer these questions:

  1. Earlier I decided I would quit my corporate engineering job in 2022. I’d stagnated, I wasn’t writing as much code as I wanted, and my company made me write our services in an internal domain specific language (DSL), which I don’t like. I’ve put off quitting due to anxiety reasons and not knowing exactly what I want to do next. I’ve even thought about taking a short gap to figure things out, but maybe that’s just me being a dramatic young person (I graduated university in May of 2020).

    However, now my company has done something terrible and promoted me to a second level engineer! And my manager has actually listened to my feedback! How could they?

    I still want to leave because the DSL ruins my coding skills and won’t transfer elsewhere. I work with great people. Also, I play an important role in the group because we’ve had so much turnover this past year. I don’t want to fall into the trap of thinking “the grass is always greener on the other side”, but I think leaving would be best for my career. How can I approach this without giving the impression that I’m flaky or ungrateful? And should I stop deliberating and quit my job sooner rather than later?

  2. I started a new position three months ago for a large pay increase, I am a fully remote software dev on a team of mostly local developers. My manager-to-be left the company a week before I started, and has not been replaced. The onboarding has been extremely lacking, I don’t have a mentor or buddy, I have very little l communication with my direct manager, and I have very little guidance on what to actually do, so I have been doing… nothing. Some days I do not even open my laptop. How do I start the conversation with my manager that I need something to do, without revealing openly that I have been doing nothing for the past three months?

A smiling speech bubble

Episode 297: Flat decisions and pointy-haired boss

Download

In this episode, Dave and Jamison answer these questions:

  1. Liam asks,

    I was the second hire in my team and worked with one lead engineer who created the entire codebase from scratch. This engineer’s code was functional but not well architected and has many inconsistencies. They have since left the company and replaced with two new senior developers who are a lot stronger technically.

    We recognize issues with the current codebase but we’re finding it hard to make decisions on the best way of solving things. We’re all at the same seniority level and the managers above us do not have hands-on experience with our codebase or tech stack.

    Because we’re at the same seniority level I don’t want to start acting beyond my job title and make all the architectural decisions, but at the same time I don’t want to be a pushover.

    How should decisions be made in a team with a flat structure and no defined leader?

  2. My previous manager quit the company last year and we’ve been assigned a new one. While the previous manager knew technical side of the project really well, the new one seems to be clueless. He is not even showing any interest in learning about what we do. He is a good people manager, but lack of context makes him really bad project manager. What should I do? Should I talk to him to convince him to learn more or maybe it is normal and we were just really lucky with the previous manager?