
Soft Skills Engineering
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.
Latest episodes

May 13, 2019 • 33min
Episode 157: How to deal with a consistent low performer and my architect wants me to switch from Ruby to Java
This episode is sponsored by the O’Reilly Velocity conference. Register today and use discount
code SKILLS for a 20% discount:
http://velocityconf.com/skills.
In this episode, Dave and Jamison answer these questions:
I became a manager a year go. I took over someone as my direct report who was not performing well at the time. On my first day, I gave a motivational chat to welcome him again to the team and continued to motivate him. But after 1 year, he is not improving at all. I give him clear feedback and set expectations but he just doesn’t change. This got to a point where it is stressful for both of us. And since I spent so much time on just for this issue, I fear that it adds to the stress and may affect my decisions. What should I do?
I’ve just join the company as a Ruby/RoR developer. After half a year the architect presented new way of developing the product and said that from now all new features will be writen in Java/Spring Boot and we switch to micriservice architecture. But I don’t like Java, don’t want to switch (I have 6 year expirience with Ruby), what should I do?

May 6, 2019 • 36min
Episode 156: How to move from web development into other software engineering roles and dealing with slow code review processes
This episode is sponsored by the O’Reilly Velocity conference. Register today and use discount
code SKILLS for a 20% discount:
http://velocityconf.com/skills.
In this episode, Dave and Jamison answer these questions:
Hey! I love your podcast, you have definitely helped me improve my soft skills in my career.
I am a full stack web developer and I have been pretty much loving it. Web development was not my original career plan though, I graduated with a Bachelor’s in Computational Mathematics & Computer Science, and I knew I wanted to be a software dev since working with robotics in middle school. I kinda fell into Web Development from my IT work study job in college.
I have been doing this for 4 years, and I am ready to transition over to applying for Software Engineering jobs. How do I get over this scary feeling of leaving my safety net? How can I encourage myself that I can make this new career transition? There will be jobs I see posted, and I just wanna go for it, but I always get scared at the thought of leaving since it’s just so intimidating, especially coding interviews and interacting with new people, new workplace, etc. What if I end up regretting my choice? Any advice is appreciated!
Thanks guys! I always look forward to your episodes every week - I share your podcast with my fellow nerd friends!
I work at a bureaucratic company where we move fairly slow.
Recently, I’ve been getting more and more frustrated with our code review process, but I’m not sure if this has to do with my quality of code.
It can take weeks for one of my pull requests to actually get merged. Someone will review my work, I will make some changes, then they will come back some days later with a new truckload of very nitpicky details that they want changed.
This makes me long for the days of me working at a startup where we had no code review, and no testing process, and it’s making me sad.
How do you draw the line over what is reasonable code review and what is too much?

Apr 29, 2019 • 27min
Episode 155: What do you think about employee monitoring software and how do I get un-demotivated after losing interest in software dev?
This episode is sponsored by the O’Reilly Velocity conference. Register today and use discount
code SKILLS for a 20% discount:
http://velocityconf.com/skills.
In this episode, Dave and Jamison answer these questions:
Hello! Thank you for the show!
What do you think about employee monitoring software? I received a message from a company about a job position and they use such software. It seems weird for me to make screenshots on my computer and to see what software I’ve use and what websites I’ve open. How do you feel about it?
I’m a software engineer with about 2 years of professional experience. When I started working, I was motivated to learn all the things. I consumed technical blogs and podcasts in my personal time and proactively identified and solved problems for the team.
Things recently changed. I can’t bring myself to care about work anymore. Curiosity used to come naturally to me but I can no longer summon curiosity about anything related to software development. A few things lead to this.
1) I got a lower than expected rating on my performance review due to an issue with my soft skills. I thought the feedback was valuable but didn’t think such a rating was warranted, considering my overall contributions.
2) Our team has spent the past few months writing code that didn’t ship.
3) I took the Soft Skills Engineering advice and got a new job. In order to do that, I spent many mornings and weekends preparing for technical interviews. After accepting the offer, I felt totally burned out.
I very much want to be back to my previous, curious self by the time I start my new job. Unfortunately, I can’t take a long break before the start date. How can I get to a place where I feel motivated again?

Apr 22, 2019 • 30min
Episode 154: Why am I terrible at picking candidates and how soon can I quit my job?
This episode is sponsored by the O’Reilly Velocity conference. Register today and use discount
code SKILLS for a 20% discount:
http://velocityconf.com/skills.
In this episode, Dave and Jamison answer these questions:
I keep getting asked to interview new candidates. But my interview feedback history is pretty bad. I’ve said yes to hiring:
Someone who’s super smart, but drives me absolutely crazy with constant argument and may cause me to take the time-honored Soft Skills advice and quit my job.
My boss at my former company, who DID drive me to quit my job.
My first (and only) hire back when I was a people manager, who turned out to be terrible, but I was told I had to keep him around because “it would look bad” to fire my first hire.
What should I do? Is it acceptable to just keep turning down interview requests? I’ve wandered into a tech lead position, so I suspect I can’t dodge them forever. But I don’t want to keep suggesting bad hires just for the sake of getting more interview practice.
Thanks for all the advice and the laughs! I’ve been a regular listener for a couple years.
How long do I need to wait before bailing on a new job I don’t like? More than a month? It’s not totally miserable: the people are nice and the company has good prospects. But the technical decisions of the team lead to daily frustrations for me.

Apr 15, 2019 • 42min
Episode 153: Informal Leadership and Dealing With Burnout (rerun of episode 71)
This episode is a rerun of episode 71 from August 2017.
In this episode, Dave and Jamison answer these questions:
I’m sometimes an informal lead on project teams. How do I help the team get stuff done as a peer?
How do I deal with burnout after an extended period of crunch time?
Jamison mentions the blog post by Jamis Buck called To Smile Again where he talks about his experiences with burnout.

Apr 8, 2019 • 34min
Episode 152: How to pair program as an introvert and being mistreated as a contractor?
In this episode, Dave and Jamison answer these questions:
Hi guys! Big fan of the show. Here’s a question: What to do if I hate working in pairs?
I’m in a tricky situation. I work on a great project in a team of great people
We try to implement all the good programming practices. Retrospectives, cross-review, working in pairs..
I hate working in pairs. I am a typical introvert-programmer and the thing I like the most about programming is that you can sit all day digging around the code and NOT communicate with the people. Or at least not all day.
But how can I say that to my teammates? “Hey, I would rather work alone than talk to you guys.. By the way, love y’all!”
It seems impossible to communicate that to my co-workers without hurting them. And moreover, this is a good practice. Which makes me feel horrible because I feel super-tired after whole day of talking to people. Plus I also feel like somehow I take up their worst qualities: if the person is slower, I become slow too, or start making mistakes. Help!!
Hey guys, big fan of the show here. Thanks for your advice and time.
The company that I work for provides “tech teams” for hire. In other words, American companies that want to outsource part or all of their tech team to a cheaper location can hire us and get developers and PMs at a fraction of what it costs in the US.
I ended up working with an established fitness company based in NY. Their management insists that we are “regular” engineers in their tech team and we should participate in their technical discussions, agile meetings and so on. However, their engineers seem to be on a completely different page and treat us like monkeys that can write some code.
For the most part, I can deal with their condescending treatment and everything else they might throw my way. The problem is that the company is currently in a very intense project and they are all “stressed” which seem to provide them license to be extra rude BUT ONLY TO CONTRACTORS. Their managers brush everything under the excuse of stress but I’m sure that wouldn’t fly if we were “regular” team members.
How would you handle this situation? Any advice before I lose my temper? I’m also afraid that getting rid of a contractor is much much easier than firing an actual employee.

Apr 1, 2019 • 25min
Episode 151: Where are all the old developers and Do I not ask enough questions?
In this episode, Dave and Jamison answer these questions:
I have a lot of software developer colleagues who are 20 - 35 years old but none 50+. At what age does a software engineer’s career end?
Hi Dave and Jamison, thanks for the great podcast.
I recently started a new position on a small remote team.
The co-founders are increasingly dismayed by my lack of Slack-question-asking, although I have reassured them that I’m not too shy and I will ask when I’m stuck. I have daily one-on-one meetings with one co-founder, where I do ask questions about the code base, story requirements, potential side effects of my solutions etc. It’s an open-source project with comprehensive and Googable developer docs, so between those and my debugger I can figure everything else out with a bit of research.
A co-founder told me that he expects to see me asking one or two questions per hour, and strongly implied that I need to do this if I want to survive my probation period. I was actually let go from my last job at the end of my probation period due to “brisk communication style” and “not asking enough questions”, so I’m freaking out now.
I don’t want to annoy my colleagues with a constant stream of inane RTFM-style questions, but I’m stumped on how else to hit my question target! Can you help me come up with ideas? Is there some big picture reason for this obsession with question-asking that I’m missing?

Mar 25, 2019 • 29min
Episode 150: How to fight imposter syndrome as a technical lead and Getting in to meetups
In this episode, Dave and Jamison answer these questions:
I worked for four years doing web development for a company while I got my degree, and loved it. I eventually became the lead developer because I had been on the team the longest.
I thought it was really cool. I worked with the team to make organizational tech decisions, trained new hires, held regular meetings to discuss projects. After about 6 months, though, imposter syndrome started sneaking in and I felt like I was making things worse, not better. I figured the team needed someone who actually had senior level experience, and the pressure was getting to me. So I bailed.
I’ve since had a few people approach me and say they want me to join their early-stage startup in a technical leadership position. I haven’t outright declined, but I’m nervous about being put in a position where the stakes are even higher.
My question is if the pressure of being responsible for everything ever lessens. Is it something that gets better as you get more experience? Is everyone in technical leadership feeling this pressure and doing a good job to hide it? What can I do to gain the confidence to eventually lead another team?
How do you step into the meetup scene? I have not attended one before, but the idea of them is interesting. However, there is this feeling that I would not fit in due to inexperience.

Mar 18, 2019 • 43min
Episode 149: How to get my engineering career back on track and how to thrive in a heavy process environment
Joining us this episode is special guest Nedda Amini!
In this episode, Nedda, Dave, and Jamison answer these questions:
My engineering career started out pretty promising. But along the way, I took a couple of unfortunate decisions and jobs, that instead of helping me grow as an engineer, were a big setback. When you career takes a few too many bad turns, how do you steer it back to where you want it to go?
I work on product development with ~25 other developers, and management recently had us all embark on a journey to gain some level of CMMI appraisal. The goal is to deliver higher quality software at a more predictable pace. In practice this means that we got more processes to follow, more meetings to attend and more time-tracking fuss.
I’m trying to keep an open mind because I, as a programmer, also have high standards for the product and it’s development. I’m scared that programmers are being turned in to factory workers stripped of any autonomy. These new processes don’t allow me to do anything without my product owner’s approval. I’m afraid that it will limit my creativity and ultimately cause my work and the product to suffer.
In this kind of scenario, what’s your advice for a programmer who often gets inspired to remove tech debt, tinker with our dev environment, and otherwise make small improvements and refactorings that shouldn’t require management approval?
What’s your opinion on the level of freedom that programmers should be provided in order to do their job well?

Mar 11, 2019 • 27min
Episode 148: In the orbit of a Rock Star Programmer and Should I share my salary with my coworkers?
In this episode, Dave and Jamison answer these questions:
I’ve been an engineer for about 5 years and in the last two jobs, rock-star programmers have made my life very difficult. I define rock star programmers as ones with ability to produce lots of code and implement features at a pace that dwarfs my own. In my last job, the RSP would constantly rewrite core libraries and I would have to figure out his design and rewrite my code to adapt to the new design multiple times.
In the current job, the RSP is very uncommunicative but with his sheer productivity steers the project into wild directions that are always coming as a surprise. Half the time my work then becomes throw-away because I was working based on the previous design. Am I a slowpoke and I’m seeing a normal programmer as a rock star or are these programmers just slightly above normal programmers but creating lots of work for everyone else?
Managers are completely starry eyed at RSP and so talking to managers seems like a bad idea. What should I do?
How do you feel about sharing salaries amongst your co-workers? I’m about to have my yearly review and I get the sense that my raise (which has already been promised to me) will be underwhelming given how stingy the company has been previously. That is simply a hunch based on previous experience and the fact that our team budgets have tightened up in the past 6 months. Recently a co-worker let it slip what his salary is, and though I don’t like playing the comparison game, it made me feel underappreciated. I discovered that he was making the same salary I was, but for lower quality of work and less contributions to the team. I’ve heard some devs in other companies advocate for sharing salaries amongst their peers, but I’m not sure if it’s a good idea. Will sharing my salary and encouraging my co-workers to do the same, allow for myself and my co-workers to better understand our value and help us negotiate raises? Or will it simply foster resentment and division?