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 505: Called to the principal's office and my team leads are super dogmatic

Download

In this episode, Dave and Jamison answer these questions:

  1. I’m a senior software engineer at a remote company (~500–700 people), and over the last year a new HR org replaced our old people team. They’ve spent six months building a new goals/leveling framework. During a public meeting I asked in slack: “We’ve had goals before and then stopped using them. How will these be different?” Nobody answered directly.

    The next day I was pulled into a meeting. The new VP of HR had screenshotted my question and sent it up my management chain. My manager told me they were on my side but leadership didn’t appreciate it. Days later I was pulled in again and told the problem was my “tone.” I didn’t argue because we were at an impasse. It felt like tone policing and like being sent to the principal’s office. I didn’t feel like they were treating me like an adult. In yet another 1:1, my manager said leadership wanted it raised again and that they don’t want questions like that in public. I told him the meeting should’ve been an email and that would’ve avoided this problem.

    Is this normal? What should I do? It’s upsetting enough that every time this gets brought up, it wrecks the rest of my workday. I’ve already been passively job searching for about three years because of broader issues, and now I feel like leadership might be pushing me out. This also follows being labeled a “dissident” by our product director after I raised roadmap concerns in another all-hands. Most of the leaders involved are newer (2 years or less), while I’ve been here 4+ years, so I’m wondering if the culture is changing right in front of me. Thanks for the show! Y’all have helped my career a lot.

  2. Hi Softskillets! Love the show, thanks for making me laugh every walk break I take!

    I’m in an org where the Frontend Platform Team has adopted a fairly rigid rule—forcing all domain logic into pure functions—to prevent “bad code.” I see value in for the big picture, but the rule is enforced at every level, even within my own team modules. It feels incredibly unnatural and cumbersome. I see our team is often leaking logic into our UI layer to avoid boilerplate that usually come “out of the box.” (in this React(ive) framework).

    I’ve tried to address this a few times, but I always get shut down with “theoretically correct” answers that don’t actually acknowledge the pain we feel on the ground. Most of the feature engineers have tried to bring this up, felt unheard, and eventually just stopped trying.

    Recently, I used AI to help me synthesize these conversations and better understand the bottleneck. I wrote a long markdown file to validate with my teammates if they felt the same. The Platform Team got wind of it, and I shared it. This triggered a lot of frustration (understandably they felt it was AI slop sent their way).

    I eventually got a meeting with one of the platform engineers. I tried to stay focused purely on the problems, knowing my solution (allowing state management in the domain layer) would be pushed away. The meeting went poorly. I didn’t feel like the weight of our frustration was understood, and when I mentioned potentially allowing some optionality for senior engineers, I was literally laughed at.

    It feels like this rule is now followed like a religion. How do I rebuild this relationship and actually be taken seriously? How can I change a culture where the “builders” feel like the “gatekeepers” are limiting them instead of helping them?

A smiling speech bubble

Episode 504: Should I quit my AI job before my first day and professional button-clicker

Download

In this episode, Dave and Jamison answer these questions:

  1. Hi Jamison and Dave. Eight years into my software engineering career, all of it at Series B and C startups, I’ve been craving two things: a recognizable brand name on my resume and the chance to work on real scale problems. After a long search, I finally got both. The catch? I got them in the wrong order.

    I accepted an offer at one of the hottest and fastest-growing AI companies in the application layer space. Exciting work, smart people, real momentum, but not quite a household name yet, and not quite facing the kind of scaling challenges that come with a billion users yet either. Two weeks later, I finally heard that I cleared the interviews from a big brand name tech company. I’ll be honest: it wasn’t my first choice brand name. I bombed interviews at a few others and this was basically my consolation prize.

    Here’s the thing about this mega tech company right now: the culture has … shifted. It feels less like a tech company and more like a social experiment with a $1.5 trillion market cap.

    So now I’m torn and the clock is ticking. My start date at the AI company is in a few weeks and I’m currently in team matching at the mega tech co. Do I renege before I even badge in? Do I start, survive team matching, and then quit? Or do I just honor my commitment and forget about the brand name for now?

    More broadly: under what circumstances is it ever okay to renege or quit shortly after starting? Have either of you been in this situation or been on the receiving end? I need stories, I need wisdom, and honestly I need someone to just tell me what to do.

  2. I’ve changed from a java developer role to OIC integration on oracle cloud. I’m not sure if that was a good move as it doesn’t feel like I’m doing much coding but lots of clicking. I was thinking that having cloud experience would benefit me but now I’m not sure. I’m not sure if I should run back to a java developer job or give it a chance and how much time would be a fair chance?

A smiling speech bubble

Episode 503: Hardware is hard and my PMs are pushing AI slop code

Download

In this episode, Dave and Jamison answer these questions:

  1. I’m a software developer with about 15 years in the industry, and I am soon starting as the CTO of a robotics company with about 50 employees.

    Though I have years of experience and an academic background within the field of robotics, I have always been focused on the software side of things. In my new role, I am ultimately responsible for the hardware team as well.

    How do I go about earning the respect, and becoming an effective leader, of my new colleagues working in a field in which I am not an expert myself?

  2. Hi, I’m meowmeow, and I’ve enjoyed your podcast for a long time.

    I’m working at a small engineering company which don’t have lots of profit.

    Recently, the PMs at my company(including the CEO) have started “vibe coding” directly on our product. They’ve even added PMs to the project planning list as contributors.

    Whenever they open a PR, the code is AI-generated and reflects their personal working style. The code quality is fairly low and engineers end up spending a lot of time reviewing and fixing it, even though we’re already under a heavy workload.

    Our CEO comes from a product management background. He believes PMs should write code and deploy their own implementations, and that engineers are not fast enough and should simply move faster.

    I’ve already been feeling stressed due to the workload, and this situation seems to be making it worse. Engineering leadership doesn’t seem able to push back effectively.

    What should I do?