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 422: Moving in to big tech and building support

Download

In this episode, Dave and Jamison answer these questions:

  1. A listener named Maria says,

    Hey guys! I am a software engineer working in web development at a small/mid-sized SaaS company. I come from a non-traditional background (self-taught, no CS degree) and I currently have 6 years of experience under my belt, the last 2 years of which I have been tech lead of a small team.

    I want to move into big(ger) tech, but I’ve not worked on any large scale systems so far. The biggest thing I’ve worked far had a user base of ~100k users and traffic would typically max out at ~2k concurrent users at peak times. Due to the nature of the work I’ve been doing at smaller companies (and also thanks to this podcast!) my soft skills are strong - I am good at working with lots of different people, I can deliver broad/vague projects, and I’m comfortable tackling ambiguous problems. I think my technical skills are probably decent, I’ve spent time learning system design and best practices, and I’ve put in the work to study CS fundamentals. Thing is, I would have absolutely no clue how to maintain an API that needs to handle 100k requests per second. My hands-on experience of concurrency and threading is basically just simple ol’ async/await.

    Grinding Leetcode aside, what can I do to make myself a stronger candidate for breaking into big tech? How can I be competitive against folks who already have big tech experience? Are there any projects I could do that would sway you as a hiring manager? I know it’s terrible market timing, I am just planning ahead.

    Love the show, thank you for making me a better engineer! :)

  2. Hi! I have been working at my fully remote company with around 100 people in the engineering department for over a year now. While I see a lot of really smart people here, the code quality is lacking. We’re moving from a monolith powered using an opinionated framework to small services powered by a lightweight library, so there are fewer guardrails.

    I have many ideas on how to structure the code, add layering, etc., so the code is easier to understand and maintain. However, the company is very hierarchical, and despite being at a senior level, I don’t talk much to anyone higher than my lead. There are no staff or principal roles. There are also hardly any meetings, and the only ones I attend are within my small team of five people. Most of slack channels for teams are private, and I don’t ever see company-wide ideas like that thrown in the “general” channel.

    I initially wanted to present this to my team first, but I am afraid that if they don’t like it for some reason, it will be awkward to take it to higher management afterward. How can I share my ideas with a wider audience and ideally get this approved as part of my work so I don’t have to work on it in my free time?

A smiling speech bubble

Episode 421: Hitting the level cap and getting credit for behind-the-scenes work

Download

In this episode, Dave and Jamison answer these questions:

  1. I’ve been wondering what kind of career conversations happen between managers and the “max-level” engineers on the team. We’ve all been on a team with those really good staff/principal engineers who are super nice, have great people skills, and seem to have an answer for every technical problem. When I’m asked to peer review some of these people, I basically have nothing to say because they seem perfect. Yet even as individual contributors, they have the same manager and still have the same 1 on 1s with them. What exactly do they talk about? How are their career conversations held? I’m always curious what exactly the landscape looks like for these engineers and what exactly is “next” for them since they seem to have reached the level cap.

  2. Hello peeps, I’m an engineering leader in a midsized company. I oversee a couple of teams and things in general have been going well. However:

    One of the teams tackles an extremely complex problem space and is usually up to the task, delivering things that almost seem like magic if you take a closer look. Now, due to the nature of this team’s work the value is not perceived as such by upper management, being questioned (almost pestered) if this is the right thing to do and even doubting if the resources should be allocated to it at all. The way that I see it is, that since this team has been quietly delivering greatness (delivering quality, meeting deadlines, not breaking things), there are not perceived as hero’s (like other teams would when then put out their, sometimes, auto inflicted fires).

    What can the team do to rise awareness about the criticality and impact of their work? This is important so that the team can have resources and doesn’t get pulled away from their current work. Also, is this a good time to quit my job while we are waiting for the AI bubble to burst?

    (Disclaimer, I’ve found an approach and am currently enacting it, but wanted to hear your thoughts on the matter)

    Optional: Shoutouts to S, a long time listener and early Patreon of the show.

A smiling speech bubble

Episode 420: New grad getting boring work and busy manager

Download

In this episode, Dave and Jamison answer these questions:

  1. Little Z says,

    Hello! I am a relatively new graduate (‘23 bachelor’s in information systems) who is currently working at a large tech company in a technical role adjacent to SWE.

    This is a great opportunity, but as time has progressed, I’ve felt growing dissatisfaction with the role. I don’t enjoy many of the projects I am put on. I feel that I am not fully making use of my technical skills/potential and that the work I do often doesn’t align my career aspirations (transitioning/diving into software engineering). This de-motivates and frustrates me, and I often feel I’m wasting my time.

    However, upon reflection, I feel that my sentiments are rooted in youthful ignorance and I am too impatient and idealistic in my expectations. What realistic expectations should I set for myself for my day-to-day work and long-term career trajectory? Should I expect to “bite the bullet” and work on things that don’t directly interest/benefit me, especially as I am still young and relatively unproven in my career? How, if at all, do economic market forces come into the picture here?

  2. Greetings!

    Long time fan, first time caller.

    This isn’t a question per se, but rather an observation that I’d love to hear your take on.

    Throughout my career, I’ve never had a boss that had less than 30 direct report. Yes, thirty. Three. Oh.

    I think this is primarly a cultural thing (I live in northern Europe), but also the fact that I’ve mostly worked in large organisations where tech was a means to an end.

    With that in mind, I find it your podcast fascinating because a lot of your answers and suggestions would be met either horror, disbelief or amusement - often a mix, I suspect.

    Weekly one-on-ones? A carreer plan? Going to skip-level managers? When your only interaction with you boss is a yearly apraisal that usually starts with the phrase “So, uuuuuh, who are you and what have you done the last year?”, your nuggets of wisdom feel less like nuggets and more like peals, as in “pearls before swine”!

    Any suggestions on how to thrive in an evironment such as this?