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 184: Indispensable and IT cold war

Download

In this episode, Dave and Jamison answer these questions:

  1. How do you quit when you’re indispensable to the team?

    I am the lead developer at a startup. I have a small team of 3 developers under me. I am essentially the “person who wrote all the code”. I have an offer from another startup for more money and more percentages of the company and they want me over there asap.

    I’m afraid to quit this startup as I fear that it’s not yet at a place where it could survive without me. I realize that sounds super egotistical but unfortunately I don’t have a successor ATM and none of the other developers are at a level where I could potentially train them to be my successor in the time frame I have with the other offer.

    The other sticky thing is that the current startup probably doesn’t have enough money to hire someone at my level for what they’d actually be worth. I, and the rest of the team, are severely underpaid, as this is a bootstrapped startup. Love your show, would love to hear your guys’ take on this.

  2. I recently interned at a local factory to help clean up some broken 20 year old databases. After remaking them, I quickly became a rising star and word spread fast of my aptitude. I was offered a full time salary position, in which I was able to negotiate for some special privileges and a cool title: software engineer.

    I am having an awesome time building little tools for various departments while learning different languages. I’ve been very fulfilled with the projects and recognition I’ve been getting, there’s just one problem: the IT department absolutely despises me. They see my sole existence as an affront to their entire structure. I am a part of the engineering team and work very closely with product and process engineers, which is apparently hurtful to their ego.

    Lately, IT has been actively obstructing every project I work on and refusing many requests, sometimes with obviously false excuses. I do not have admin privileges, I have limited internet access, I’m not even allowed to have my email password. It’s at a point where I start getting serious anxiety when I need to see IT (e.g. to install a framework or IDE extension).

    How can I navigate these awful encounters without letting it harm my view on the rest of the job? I am feeling like I need to wage war but I want to retain my golden boy status.

A smiling speech bubble

Episode 183: Terrible boss code and peer-to-peer mentorship

Download

In this episode, Dave and Jamison answer these questions:

  1. I work in a small team under 10 people on a new project that should be shipping soon. I have a manager who is leading this project, and I’m the most senior developer on the team.

    My manager tries to help with the project by writing code, but does it rather poorly. When he wants to implement new functionality, he creates a new branch and brews his code in this branch for 2-3 months, constantly complaining how hard it is to write code in our codebase. After he is done, the resulting code is unreadable, unmaintainable and untestable. He doesn’t write unit tests himself (which is weird, considering he was working as a QA before for several years) and usually breaks good portion of already written ones. I always have to go to his branch and refactor his code so it’s at least testable, fix broken unit tests and write new ones for his functionality. He always makes it look like our codebase is hard to work with, though the rest of the team doesn’t have this problem.

    How should I deal with this situation?

    I tried speaking to him directly, but he is pretty stubborn and thinks that he is doing everything perfectly.

    I can’t talk to his manager, since we have a pretty flat company and his manager is the CEO who I don’t have a direct access to.

  2. I work in a digital agency as part of team of 5 front end developers with varying levels of experience. We don’t have a senior / lead / director, it’s pretty flat. I have been told by management that we need to work on peer to peer mentor-ship because each of us have been guilty at some point of spinning our wheels on some problem when we should have reached out. The problem is we all work on different projects, there’s never 2 ““fed””s building the same site, and each site kind of feels like it’s own unique bowl of spaghetti.

    If you have any pointers about breaking out our code bubbles that would be amazing! Love the show, I hadn’t given non technical skills much thought but you’ve opened my brain! Thank you!

A smiling speech bubble

Episode 182: Lunch and switching to product management

Download

In this episode, Dave and Jamison answer these questions:

  1. My team often goes out to lunch; I almost always bring a lunch from home. They invite me to come with them, but it feels weird, since I won’t be purchasing a meal from the restaurant. Should I swallow (pun intended) my pride and go with them anyway, or decline their offer? I would bring lunch less frequently, but it’s difficult to predict what days they are going out together.

  2. I’ve been a software engineer for 7 years and it recently occurred to me that product management would be an interesting and fulfilling field that I’d like to give a shot. Is this something I should discuss with my engineering manager or director, or other product managers at my company?

    While I think it’s possible these people might be able to help me, my anxious mind can think of many ways that advertising I want help transitioning out of my current role could go badly. I also happen to be fully remote, so I don’t have many opportunities to bring these things up in more casual settings. I doubt I’d be able to get hired as a PM at another company without prior experience, so getting help from co-workers or management at my current company seems pretty important. Do either of you know anyone who’s made this jump? Any tips on getting help without pushing too hard or creating problems for myself?