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 506: I hate my job with AI and my team-mate thinks I suck

Download

In this episode, Dave and Jamison answer these questions:

  1. Hi Djavison,

    I’ve heard y’all say something along the lines of “this is the most exciting time to build software” in a few recent episodes.

    I’m glad that has been your experience and seems to be the experience of many others.

    But for me as someone 5 years into the career who is, thankfully, employed—I can’t help mourning a job that no longer exists. Obviously, there are still lots of us with the job title “software engineer” that create software. But, what I originally fell in love with doesn’t really seem like a thing you can get paid to do anymore.

    I now spend most of my development time reviewing code and making sure things work. Which feels way less rewarding and way more soul-sucking.

    Maybe I’m just nostalgic for being a more junior developer, but it’s obvious that our jobs have changed forever and will continue to evolve.

    So, my question is: How can I get excited and feel passionate about this new way of doing things?

  2. I am a senior team lead with 10+ years of experience. This is the first time I’ve had a team mate that clearly disrespects me.

    I have a Middle+ teammate who is technically perfectionistic and openly says I’m doing a poor job and that basically he doesn’t see me as an authority. He says I am not as devoted to technical excellency and improving the project as he is, and that I ignore his opinions, which is his term for not having the same opinion about tech stuff as he does.

    He doesn’t see the big picture and thinks he’s the only person on the team trying to make the code better. But the worst part is he never admits he’s wrong. I had to scramble to fix a bug he created when we caught it right before release, and he accused ME of introducing it!

    My manager know what’s going on, but I feel terrible about it. I have many different projects and responsibilities. I can not be as devoted to the codebase as he wants. Plus, I am not the architect and nor should I be. I see that it demotivates him (like the person in the 499th episode), only in this question I am the senior.

    I know my weaknesses and I am working on them, I don’t think I can address his feedback. More than that, I’ve always tried to maintain a good relationship with him and always gave him the freedom to work on tech stuff and develop his skills. But what to do when your child has grown and is now unthankful? 😂

    Thanks for your advice!

A smiling speech bubble

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?