406 episodes

It takes more than great code to be a great engineer. Soft Skills Engineering is a weekly advice podcast for software developers about the non-technical stuff that goes into being a great software developer.

Soft Skills Engineering Jamison Dance and Dave Smith

    • Technology

It takes more than great code to be a great engineer. Soft Skills Engineering is a weekly advice podcast for software developers about the non-technical stuff that goes into being a great software developer.

    Episode 405: Scaled agile pain and top-heavy team

    Episode 405: Scaled agile pain and top-heavy team

    In this episode, Dave and Jamison answer these questions:




    One and a half year ago, I joined my current team as a tech lead, in an organisation that uses ‘Scaled Agile’. This was my first time joining an organisation that employed dedicated Scrum masters. In previous organisations, the role of Scrum master would usually fall upon a team member that felt comfortable doing so, and the last couple of years that ended up being me. I feel this worked out well and I managed to create teams that were communicating well and constantly iterating and improving.


    Upon joining the team, I noticed that despite having a dedicated Scrum master, the team was not doing sprint reviews or retrospectives, and it felt like every team member was on an island of their own. In the months that followed I tried to reinstate these and improve teamwork and communication, but often felt blocked by the Scrum master’s inertia.


    Eventually, they were let go and a new Scrum master was hired. This new collaboration did also not work out. They didn’t have enough of a technical background to engage with impediments, were trying to micromanage team members during Standups, and would continually try to skip or shorten retrospectives. If retrospectives were to occur at my insistence, they would try to determine actions without the team’s input, only to not do them and never look back at the outcome.


    Two months ago the new Scrum master was let go and I was asked to take over their duties in the meantime. Ever since, it feels like the team finally owns their own Scrum process. Our collaboration is not perfect, but we’re finally tracking measurements, evaluating retrospective actions, and iterating as a team. However, the organisation wants us to go back to having a dedicated Scrum master. I’m not against this, but I’m afraid the next Scrum master might undo our efforts. How do we as a team navigate this situation to get an optimal outcome?



    A listener named Max asks,


    I’ve been working in a Data Engineering department at a mid-size product company for over 5 years. When I joined, we had a well-balanced team in terms of average proficiency - some juniors, some middles, and a few seniors. Over these years, we’ve developed a great internal culture where people can grow to a senior level pretty easily. The company itself is wonderful to work for, and we have a pretty low “churn rate” - most of my colleagues are highly motivated and don’t want to leave.


    As a result, we now have only senior and staff engineers in the team. This is well-deserved - they all are great professionals, highly productive, and invaluable for the company, having domain knowledge and understanding of how all our systems work. Management wants them to take on only senior-plus-level tasks, which are usually larger projects and initiatives that involve a lot of collaboration with other departments, process changes or technical initiatives affecting our engineering practices. They have two reasons for this: 1) management doesn’t want to waste the time of such skilled professionals on smaller tasks; 2) management cares a lot about people’s morale, because losing them would be very harmful for the whole company, so they don’t want people to take on small and boring tasks.


    At the same time, we have a HUGE backlog of tech debt, small improvements and refactoring initiatives. Ideally, we would hire 3-4 additional middle and junior engineers to share all backlogs with them, but we now have a hiring freeze. The amount of tech debt is starting to damage team morale on its own, and I feel like we have an unspoken deadline to deal with this problem, which could be someone’s burnout and departure, or a major outage in some vital services we support caused by ignoring tech debt.


    How would you approach the problem of overseniority? I appreciate any advice, and thanks again for the show.

    • 34 min
    Episode 404: Interview comedy and talking pay while new

    Episode 404: Interview comedy and talking pay while new

    In this episode, Dave and Jamison answer these questions:




    “Hello,
    Is it considered ok to be a bit funny during an interview?
    To give more context:
    In a recent interview, I progressed up to the final cultural-fit round after clearing all technical rounds at a well-known company.
    One of my interviewer asked how I would deal with conflicts with a peer. In a effort to lighten the mood, I jokingly said I would snitch on them to my manager. I saw the faces go pale on the zoom call. So I backed-up and explained I was just joking and gave them an example of an instance where I had to deal with a conflict. The story didn’t help much to make my case, as there was some “snitching” involved in it.
    But in all seriousness, if I had a conflict in the past and have reached out to my manager to help diffuse the conflict, is it considered a bad thing. How do I make it sound like a good thing during culture-fit interviews?
    By the way I didn’t get an offer from them. Can’t help but think I goofed-up the culture interview.
    Thanks for your time and help.”



    I recently started my first full-time job out of college. I earned an engineering degree but took a job with a company in a more management/ business development/ leadership track. Now I’m the only person in a department with an engineering degree.I’ll be here for a couple of years before they move me into the next role in my track.


    In a casual conversation about going back to school, one of my coworkers jokingly mentioned they would get free school at a local university because they made less than X dollars. This threw me off, as I (having started less than 3 weeks ago), make more than X dollars despite us having the same position and them having worked in the department for almost a year.


    Should I say anything, or just assume that the difference in pay is due to the fact that I have a technical degree and am on a leadership track while they are in neither? I’ve been told it’s mutually beneficial to discuss salary with your coworkers, but I’m afraid to shake things up at my very traditionally run company in my first month here. My pay corresponds directly to the starting pay that an engineer in a design role in my company would be making and I think I was given this pay so not to discourage me from taking a role in the company in favor of an engineering job with engineering pay elsewhere.

    • 28 min
    Episode 403: Massaging the software and career never-never-land

    Episode 403: Massaging the software and career never-never-land

    In this episode, Dave and Jamison answer these questions:




    I’m a bootcamp graduate working on a career shift from massage to software development. How much of my previous career should I bring into my résumé? I’ve been building projects in public, and doing open source contribution in a part-time capacity for the past two years, but ultimately have not gotten very many bites on my résumé that resulted in interviews. It’s something like three skill tests and one for roughly 800 applications at the moment? That’s a guess. That’s basically the gist of it.


    Thanks!
    Curious Coder Tries Tech Transition



    Listener Joshua says,


    I’ve done a number of things in my career, from Java to web dev on PHP and Angular/Node to low code development on Ignition SCADA and UIPath RPA .


    Because I love learning technologies and I want to go where the money is, I keep hopping to new teams. This usually comes with a decent pay bump, but it’s a lot of rescue operations and self-teaching.


    This doesn’t feel like a career path, and always being the junior team member sucks. I’m often studying for certs trying to meet the requirements for the job I’m already doing or being the senior dev on the team while still a Junior. I get that I’m relatively new to each team, but I’m also punching above my weight consistently.


    It feels like I’m always having to jump through hoops to get the title and pay for the level of responsibility I take on and it feels like my mixed-up background is the reason why.


    How can I pitch a 10 year career of wearing all the hats all the time to get better results? How can I avoid being on teams where all my coworkers think I’m a guru and I’m building all of the architecture, but my manager goes “gee, I don’t know if you have the years of experience to be a Senior”? I’m looking towards Architecture as a long term goal and I’m wondering if there’s a way to spin this skillset towards that goal. Can you get Architect if you aren’t a certified black belt in highly specific tools but rather a demonstrated improviser? What is a jack-of-all-trades supposed to do?


    Thanks, love the show, your advice and the fun relationship you guys bring to the conversation.

    • 31 min
    Episode 402: It's all on fire and title inflation

    Episode 402: It's all on fire and title inflation

    In this episode, Dave and Jamison answer these questions:




    Happy Birthday Dave and congrats on the 400 episode milestone!


    Last year I was recruited away from my cushy Sr Dev role at Chill MegaCorp to an exciting technical leadership role at Fast-Paced MegaCorp. It felt like a huge level up since I had always wanted to pick up some of the softer communication and leadership skills to add to my arsenal while still working on technical problems. The 30% pay raise sealed the deal. Fast-foreward one year and I am burnt out, feeling disengaged and thinking about quitting.


    Compared to my previous role, everything here is urgent and high priority. There is little structure on my team, no planning or intake, and we just react to emails and pings from other teams about things not working. Our Sr Dev is very knowledgable but often gets short and impatient with me. My Sr Manager has said things like “sleep is for the weak” and frequently sends emails in the middle of the night. We have weekly evening releases that have gone till 4am. We are expected to always be around in case of a production incident – which happen very frequently because of the sheer complexity of everything and high dependency between internal services.


    I have considered moving to another team, but unfortunately this seems to be a company wide culture. I am considering cutting my losses with this company and moving back to an IC role with better work-life-balance. I am grateful for all the leadership skills I have picked up this past year and learned a ton in such a fast paced environment, but its been a whole year and I still haven’t gotten used to the “always on” culture and overall chaos.


    Is it normal form someone to shift between management and IC like this? What do you guys recommend?



    Hi Dave and Jamison, thank you for the show. It is the engineering podcast I look forward to most every week.


    I work at a company that, maybe like many others, has lots of title inflation. As a result, my title is much higher than it would be at a larger (and public) tech company. For example, “senior” may be one or two levels below senior elsewhere, and “staff” would be “senior” elsewhere. We also have “senior staff”, which might be “staff” elsewhere, but more likely that might just be a more senior “senior” engineer, too.


    My question is: How should I consider approaching a job search where I am knowingly (and reasonably) down-leveling myself in title? Should I include the relative level on my resume (for example, “L5”)? Should I not address it unless a recruiter or interviewer asks about it? Briefly mention the seeming down-level in a cover letter as comparable responsibilities and scope as my current role?


    I have worked hard for my promotions, because salary bands required the title change for the money I wanted, but now I am worried it will complicate applying to other companies.


    (Thank you for selecting my question!)

    • 32 min
    Episode 401: I AM the superstar and pro-rated raise

    Episode 401: I AM the superstar and pro-rated raise

    In this episode, Dave and Jamison answer these questions:




    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?



    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?

    • 30 min
    Episode 400: Underperforming intern and upskilling

    Episode 400: Underperforming intern and upskilling

    In this episode, Dave and Jamison answer these questions:




    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!



    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?

    • 32 min

Top Podcasts In Technology

Apple Events (video)
Apple
Lex Fridman Podcast
Lex Fridman
The Official SaaStr Podcast: SaaS | Founders | Investors
SaaStr
Reply All
Gimlet
Builders by Proxify
Proxify
All-In with Chamath, Jason, Sacks & Friedberg
All-In Podcast, LLC

You Might Also Like

Developer Tea
Jonathan Cutrell
The Stack Overflow Podcast
The Stack Overflow Podcast
The Changelog: Software Development, Open Source
Changelog Media
Compiler
Red Hat
Software Engineering Daily
Software Engineering Daily
Syntax - Tasty Web Development Treats
Wes Bos & Scott Tolinski - Full Stack JavaScript Web Developers