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 401: I AM the superstar and pro-rated raise

Download

In this episode, Dave and Jamison answer these questions:

  1. A listener named Metal Mario asks,

    A few weeks back in Episode 395 you talked about working with a superstar teammate. I feel like for our team, I’m the superstar.

    We’re a small software team in a large non-software company. I joined a year ago and very quickly took on a lot of responsibility. I think I’m a fantastic fit for the team, received *outstanding* feedback in my annual review as well as during the course of the year, and I get along great with my teammates. However, there are two problems.

    I joined the team on a lower salary compared to the rest of the team. I was initial ok with it because I changed to a completely new tech stack as well as a new role. Now I strongly feel like I should earn more than my colleagues. My boss hinted that he agreed in my annual review.

    I fear that by me joining the team and demanding a substantial pay raise, the cake gets smaller for the rest of the team, and that they feel like me joining the team prevented them to rising through the ranks.

    The second problem is related: a colleague of mine (mildly) complained that he lost responsibilities to me since I’ve joined the team. I talked to my boss about that, but given that things have been going very well, my boss would like me to keep doing the tasks. Again- I’m worried that my colleagues might get spiteful with me.

    Would it be better to take it down a notch (in order not to endanger team happiness and keep things stable for the company), or should I perform to the best of my abilities all the time?

  2. Impoverished By Pro-ration asks,

    Is it reasonable for a company to pro-rate raises for new employees?

    I recently received a raise that was smaller than expected as part of a promotion I got 9 months after joining the company. I joined halfway through the year and was under-leveled, so I quickly was put up for promotion, and got it! My raise was about half what I expected, and when I asked HR, they told me that the policy is to prorate raises, so because I joined halfway through the year, I only get half the raise that the promotion should come with, so instead of the 20% I was expecting to bring me up to the salary range of the job level I originally applied for, I only got 10% and am now making less than I think I should.

    Have I permanently crippled my lifetime earnings?!?

    What can I do to get the company to pay me appropriately? I understand if bonuses are pro-rotated, but why would raises also be pro-rated?

A smiling speech bubble

Episode 400: Underperforming intern and upskilling

Download

In this episode, Dave and Jamison answer these questions:

  1. I’m a junior software engineer who has been placed in charge of a handful of graduates and interns who have joined my team. The project is fairly technical.

    For the first two weeks, the new starters were pair programming. That went well, and after talking to each new starter they were eager to start working individually.

    We’re one month in and I’m concerned about the performance of one of the engineers, “Morgan” (fake name). Morgan has completed a degree from a good university we often hire from but appears to lack any knowledge of software development. As a result, Morgan seems to struggle with researching and working through problems beyond following tutorials. I got the impression that while pair programming Morgan didn’t contribute much.

    Is there anything I could do to give Morgan the boost needed to start rolling? I’m sure I could spoon feed Morgan, but it would monopolize my time when I’m already spending time with the other new starters on top of my own tasks.

    I want to give Morgan a shot, but I don’t know what to do. At what point do I tell my manager about my concerns?

    Things I’ve encountered:

    • When told to insert a colon to fix a syntax error, Morgan didn’t know what a colon was.
    • Morgan didn’t take any subjects at university on data structures or algorithms, which made it hard to explain the tree used for caching.
    • Morgan wanted to do some DevOps having done some at university. Morgan appears to have no understanding of Docker.
    • Morgan said they studied React at university but has demonstrated a lack of understanding to write React code.
    • The last issue Morgan worked on required them to read some source code of a library to verify its behavior. Even after explanation Morgan didn’t understand how to find the calling ancestor of a given function.
    • Morgan has never heard about concurrency.

    Even all these issues in aggregate would be fine with me, but the continual resemblance and behavior of a stunned mullet isn’t encouraging. After being told to research a concept, Morgan must be told the specific Google query to type in.

    Thanks, and apologies for the essay!

  2. Listener Confused Cat asks,

    I spent just over four years on a team where technical growth was lacking. Recently, I transitioned to a new team within the same company, and I’m enjoying the atmosphere, the team dynamics, and the opportunity to engage in more challenging software development tasks. Fortunately, my motivation is beginning to resurface.

    However, I’ve noticed that my technical skills have become somewhat rusty. While I can still deliver systems and features, I feel like I’m falling behind compared to some of my peers. This self-awareness is causing me to doubt myself, despite receiving no negative feedback from my current team or supervisor. It’s not just imposter syndrome; I genuinely feel the need to upskill.

    How can I navigate this situation effectively? What strategies would you suggest for advancing my skills while holding a senior position and preventing feelings of inadequacy from affecting my performance?

A smiling speech bubble

Episode 399: Higher paid than my boss and crossing over to management

Download

In this episode, Dave and Jamison answer these questions:

  1. Listener Jim asks,

    I am currently a senior software engineer in a well funded (but not profitable yet) startup. I am highly effective and well regarded, to the point where the tech lead also comes to me with questions and always takes my technical input onboard. I also get along very well with the rest of the team and with my manager. I am confident that I am in a good position to bargain for a decent pay bump, however there’s a chance I might be asking for pay that exceeds the salary of the tech leads or even my manager’s. Would it be a hard no from the start if that’s the case? Do you know of situations where certain people were paid higher than someone from a higher position? Thank you, I’m loving the show!

  2. I did it. I crossed over…

    I’ve been a software engineer for nearly 25 years. I worked my way from junior to senior, staff to principal, and for the last six years I’ve been a technical articect.

    I’ve been very deliberate in my caraeer path and told myself that I would always be on the tecnical side of the wall rather than the managerial side. Most of my boses over the years have been former technical folks that just seemed to have step off the technology train at some point. Maybe they couldn’t keep pace with the rapid changes in their older age, or maybe they just didn’t like IC work, who knows? But I always had this feeling about them, like “they just don’t get it anymore”, or “their technical knowledge is so outdated, how can they make good decisions”? Much like a teenager looks at their parents who stepped off the fassion train many years prior and now doesn’t want to be seen in public with them.

    Well, I just accepted a job leading a team; with headcount, and a budget, and the works. It was not the role I really wanted, but in this market, I didn’t have a ton of choices. It’s billed as sort of a hybrid Architect/Manager role, but it *feels* like I crossed a threshold. I feel like my future will be that of a retired race horse living out the last of his days if the middle-management pasture. So, 2 questions:

    1. What can I do to not become a hollowed out shell of myself as the technology train eventually starts to out pace me, and eventually speed away at ludicrous speed, because I’m not “doing it” every day
    2. Is this just the envitable for every SE? I mean, I don’t see a lot of 70 year old coders, so this is normal, right?