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

    • テクノロジー
    • 5.0 • 5件の評価

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 384: EM missing code and non-location pay

    Episode 384: EM missing code and non-location pay

    In this episode, Dave and Jamison answer these questions:

    A listener named Jay asks,

    Over the past eight years I’ve been promoted from Software Dev to Team Lead and then to Engineering Manager.

    After two years as an EM, it helped me a lot financially, I like what I do and I think I’m doing it really well. However, I have two concerns.
    First, I love programming and now I don’t have any time other than in my limited free time to do it. I can feel my coding skills atrophying.

    Second, I’m worried that I could only get EM jobs in the future, and there are fewer openings for EMs than for Senior Software Developers.

    Could I go back to a software developer role? Would they even take me?

    I work for a staff augmentation company in an African country for a software company in New York. I’ve been with this client for the last five years and I have climbed up the ladder enough that I can access the company financials. I am paid based on my location, which is not much after the exchange rate to local currency. My pay hasn’t increased as I’ve become more effective. Since seeing that info, I don’t feel the need to go over and beyond for this client anymore. The client expects me to be a rockstar developer and ship out code faster they can think of more ways to make money but my enthusiasm has diminished over time and my manager has been notified about it. What steps would you take to ensure you get reasonable pay as a dev earning a location based pay? The staff augmentation company is ran by US citizens.

    • 25分
    Episode 383: In the trenches without writing code and how to close a social skill gap

    Episode 383: In the trenches without writing code and how to close a social skill gap

    In this episode, Dave and Jamison answer these questions:

    I recently started the interviewing for a senior engineering manager role at a fairly prestigious, but not huge (maybe 30-50 engineers) tech company. The job description heavily emphasized the idea of leading as a peer as opposed to just relying on the EM title. I love this approach, but the lead interviewer then disclosed that they don’t want EMs writing production code. This seems like a contradiction.

    Am I naive in thinking so? I certainly understand that taking on a more managerial focus will result in less IC work. However, as a leader I find a ton of value in staying close to the trenches. It allows me to earn the respect of my reports, empathize with their day to day, and sniff out good/bad decisions quickly.

    As an engineer with good softskills, it feels like gravity wants to rip me away from writing code. How do I stop this? Can I? Should I resign myself to a work-life filled with never ending 1:1s?

    Hello Dave and Jamison, thank you for your podcast. I have listened to almost all episodes and they provide both educational and entertaining values, you rock!

    I would like to ask you for advice. I am struggling with a problem related to communicating and cooperating with people in general. I have over 10 years of professional experience. I was always a hardcore nerd, sitting alone in front of the computer and programming, focused only on pure technical skills, everything else was unimportant. Most of my career I spent in small companies where I could just spend time writing code and I wasn’t bothered by anything else.

    However, one year ago I started to work at FAANG and now I feel overwhelmed. Technical skills seem not so important anymore. Most of the problems are being solved by talking, negotiating and following up with other teams, participating in meetings and presenting results to management. It stresses and burns me out. I feel it like a waste of time and potential but also I was never a people person, so I am anxious every time I am in a new social situation.

    How could I convince myself that such non-technical skills are equally important as technical skills? What steps can I take to improve my attitude and skills? What would you advise if you had to work with a person like that?

    • 37分
    Episode 382: Mentors for managers and mob programming

    Episode 382: Mentors for managers and mob programming

    In this episode, Dave and Jamison answer these questions:

    There aren’t a lot of engineering management growth resources in my company. It’s a relatively small company with about 50 engineers. My manager doesn’t have time to properly mentor me. And I’m not sure I would want him to because I feel like his advice isn’t always the best. Where can I go for management mentorship or other learning resources? Is it worth exploring non-engineering managers on other teams? Or leaning more on my peers? Or should I be looking for outside advice?

    A recent episode mentioned awkward Zoom silences. My experience is the exact opposite.

    I recently switched teams at the same company. This new team has a Zoom room open for the entire work day. The first person to start their day begins the Zoom and the last to leave ends the meeting. They do “mob programming” using a command line tool that switches users every few minutes along with all the strict rules of Extreme Programming - a driver, navigator, etc. But they also do everything in groups: story refinement, diagrams, documentation, everything. Live collab, all day, every day.

    I’m one month into this transfer but worried that this isn’t a good fit and that I made a horrible mistake. ALL the other engineers here rave about how this is the greatest thing ever. Am I the weirdo for not liking it? I feel like I am of split-mind to only either speak or type (but not both) and have not yet rediscovered my coding flow.

    Mostly I just wanted to roll a perception check with you: Am I the weirdo for not liking all this collaboration and 100% Zooming, or would this workflow drive most other engineers mad as well? Any pep talk about sticking it out would be appreciated.

    • 31分
    Episode 381: Doing less and bad reference

    Episode 381: Doing less and bad reference

    In this episode, Dave and Jamison answer these questions:

    My company is doing performance reviews. While writing my self-review, I was shocked by how much I had accomplished in the last 6 months. I’d led our org to adopt multiple new technologies and supported other teams in adopting them, to great effect. But looking back, I wish I could trade half the accomplishments on my self-review for time spent taking better care of myself and my partner and kids. I’m not working crazy hours; I work a pretty regular 40hrs per week on a flexible schedule (with 3 young kids, this is, in fact, a crazy schedule). I’m on track for the promotion from senior to staff, maybe in this cycle, and I’m wondering: would it be crazy for me to propose that I stay in the senior pay band, and start working 4 days a week?

    I’ve also considered scheduling personal time during the day. But I know I’ll be fighting an internal work-time-clock forged by years of cortisol flow. What’s your advice for lightening up a lead foot?

    A listener named Aisha says,

    6 months ago I quit my first job out of college. It was a very toxic and hostile workplace. I sucked it up for almost 3 years, but it got so bad that I had to quit my job without another lined up (yikes, I know).

    I was a great employee, and was always given excellent performance reviews. After giving my boss plenty of notice, I asked if I could use him as a reference and he said yes.

    It’s been a struggle finding another job. I’ve submitted hundreds of applications, reviewed my resume with mentors, and attended workshops for interviewing skills, but nothing helped.

    Out of sheer desperation, I had a friend pretend to be a future employer and call my boss asking for a reference. As I suspected, he was providing a bad reference that included outright lies about my work ethic and me as a person. I have no idea why he would do this.

    I am at a loss of what to do. The obvious thing to do it not include that job on my resume, but without it I basically have zero experience and a large gap between graduating and now. :(

    I have contacted some of my old team members if they could be a reference instead of my boss, but none have gotten back to me as of yet weeks later. Please help! What do I do?

    • 32分
    Episode 380: Overruled by non-technical manager and describing technical stuff to non-technical people

    Episode 380: Overruled by non-technical manager and describing technical stuff to non-technical people

    In this episode, Dave and Jamison answer these questions:

    Listener Ashleigh asks,

    I’m a mid-level developer at a small company with a non-technical manager. After several months working on migrating our users from a legacy system to our new system, our non-technical business analyst discovered our current system re-uses lots of code from the legacy system. The BA immediately escalated their “concerns” about this to our manager. This quickly resulted in a group message from our manager to the BA, our senior engineer, me, and another developer. Without asking for more than a cursory explanation of how two sets of users who need the same functionality can use the same code base without breaking things for each other, our manager made the decision to fork the project and maintain two separate code bases.

    The developers tried to explain why this was a bad idea, but we were immediately shot down. This has already resulted in issues in pre-production environments. They were afraid that having changes in one unified code base would break things for both groups of users. We were given no opportunity to make further arguments. Two months later I find that my motivation at work has tanked. Despite being below market rate, I’ve stayed because it’s allowed me to advance my skills as a developer.

    But my trust in our BA and management is completely shattered. Is it worth staying in my current role? Is salvaging my current situation a hopeless cause that will likely just collapse again in the future? Or would I be wise to get out ASAP before things blow up and the blame is pushed on our development team? I feel like I already know the answer in my gut, but I’d like to hear your perspectives on this.

    Listener Damison Jance asks,

    I sometimes find myself struggling to describe how software issues will affect product designs to non-software engineers. It is hard for me to explain “this seemly tiny change in user experience you’ve asked for is actually driven by this backend functionality that is totally transparent to users and really no one besides backend engineers has any reason to know about it, but yeah anyway that small change is going to require six months of work and changes to multiple services.” I have found this approach quite ineffective, and I think it comes off as me sounding like “my way or the highway”. I’m wondering if you guys have any tips for explaining how systems work to people who aren’t software engineers and don’t necessarily have all the context you do.

    Show Notes
    Microservices video (keyword: Omegastar): https://www.youtube.com/watch?v=y8OnoxKotPQ

    • 38分
    Episode 379: Someone fixed my ticket and is tech debt bad for my career

    Episode 379: Someone fixed my ticket and is tech debt bad for my career

    In this episode, Dave and Jamison answer these questions:

    “Hi! Love the show, long time listener.

    So an architect noticed an issue with credentials embedded into request body being logged. I had planned to resolve that, and someone already had done so for another instance.

    I took a day or two to figure out how to fix it globally, and even tied it into another filtering we did. That would mean one list of sensitive data patterns to maintain – that we already had, and don’t need to worry about which context keys to scan in. Scan them all, CPU time is free after all /s

    I opened this PR, and received no feedback for a day. Another engineer did mention an alternate approach that would resolve this particular case, but I was trying to fix it globally so we didn’t have to maintain a list of keys to scan on.

    Next day he mentioned he made some click ops change that resolved THIS PARTICULAR INSTANCE, meanwhile still not providing any feedback on the PR. This approach is IMO a maintenance burden: keep two different filtering in sync, proactively add keys to strip. High chance of mistakes slipping in over time.

    So I said OK works with some caveats, and rejected my PR. I can not explain why but this incident tilted me hard. For one thing he essentially grabbed my ticket with no communication and resolved it himself. Then he provided no feedback and went with a different approach without consulting anyone else. Worst of all, he ended up with an (IMO) markedly worse fix that I had already dismissed as being too brittle and likely to miss things in the future.

    What do? Am I unreasonable to feel undermined and disrespected?”

    Hi Dave and Jamison, long time listener love the show. I work on a team that is relatively small in size but we own a huge scope including multiple flavors of client-side app and a bunch of backend integrations. We recently launched our product and since then there have been constant fire due to various tech debt that we never fix. Our manager has attempted to ask the team to share the burden of solving these tech debts, but there are only very few that are actually doing it. I can think of many reason why they are not able/willing to take on the task, likely due to other priorities or unfamiliarity with the part of the codebase. Due to my familiarity with various component, I’m usually the one proposing the fix and actually fixing it. I have started to feel this is taking a toll on my own career development because I ended up not having bandwidth to work on those bigger projects/features that have high visibility and good for promotion. I do think solving the tech debt is important work and don’t mind doing them. How would you navigate this situation? Thanks for the awesome podcast!

    • 36分





Tatsuhiko Miyagawa
Off Topic
Lex Fridman


Jonathan Cutrell
The Stack Overflow Podcast
Changelog Media
Wes Bos & Scott Tolinski - Full Stack JavaScript Web Developers
Software Engineering Daily
Changelog Media