It takes more than great code to be a great engineer.

Subscribe Now Support us on Patreon

Soft Skills Engineering is a weekly advice podcast for software developers. We answer questions about all the stuff you didn't realize you needed to know about being an engineer:

  • pay raises
  • hiring
  • going into management
  • annoying co-workers
  • quitting your job
  • meetings
  • micromanagers
  • installing a ball pit in your office
  • and much much more...

For answers to these and other questions, our hosts Dave Smith and Jamison Dance are here to help.

Why should you listen?

Soft Skills Engineering listeners are awesome. Here's what they are saying about the podcast.

Jack says:

Not only did Soft Skills Engineering help me land my first gig, I also used your advice to negotiate a $10,000 raise! I love your podcast and will continue to heartily recommend you to everyone I know!

Hdennen says:

Facing a 9 hour drive, I grabbed a bunch of podcasts to listen to. I don't even know what the other ones are. Seriously, this podcast is full of massively helpful and relevant content from two people who are experienced, funny, and insightful.

Saad says:

Listening to Soft Skills Engineering has completely shifted my thoughts on what it means to be an engineer. It’s probably one of the more useful things I’ve gained during my time at Amazon. It definitely helped me grow, and I’m totally indebted to you for that.

Follow the show

Follow the show on social media for the latest news:

Facebook: https://www.facebook.com/SoftSkillsEng/

Twitter: https://twitter.com/SoftSkillsEng/

Recent Episodes:

Episode 178: Procrastinating colleague and working remotely for an on-site company

Download

In this episode, Dave and Jamison answer these questions:

  1. One of my co-workers never does their job in time and always postpones things. We are both leaders in the company. Especially when we depend on each other, it becomes really difficult.

    I tried many things like taking over their tasks, reminding them (in person, in Slack), escalating to their manager etc. None of these worked.

    As a different strategy, I organized a workshop with leaders to brainstorm how to collaborate and work together. That was really positive. We talked about each other’s responsibilities. This person was active in the workshop. Contributed and also agreed on many things. I felt really positive after this. :)

    But then shortly after, I ended up with frustration again. Nothing actually changed. Agreeing is easy but taking actions is not.

    Please give me recommendations other than quitting my job or waiting this person to quit. 😅

  2. I work remotely for an on-site company. How do you manage that relationship?

Episode 177: Work life vertigo and work life interviews

Download

In this episode, Dave and Jamison answer these questions:

  1. I started working at a big fintech company doing cutting edge work. I was given a ton of responsibility (owned a major component, built it from scratch, manage external relationships with vendors, had a team of 3 engineers, filed a few patents). I was extremely successful at this role but I was working 60 hours a week. Even though I was successful, I felt like I didn’t have good work life balance.

    I left and joined a well established tech company with 600 engineers. I’ve been here almost 1 year now and looking back I’ve only worked on menial feature work and software maintenance. Now I work 30 hours a week and have great work life balance. I feel like I gave up a great opportunity with my old role. How do I make the most of this role? How should I tell my manager I’m not happy? should I just look for a new job?

  2. How and when do you ask about or gauge work life balance in a job interview? I recently got to round 4 of an interview and a developer told me that a person wouldn’t do well at this company unless you put in a lot more than 8 hours per day and the CEO rewarded those who stay late at night. This indicated a bad work life balance to me so I didn’t proceed any further.

    Does it look bad to bluntly ask an interviewer “what’s the work life balance like” or ask about this in round 1? Do you think I am lazy?

Episode 176: Afraid to disappoint and tech co-founder advice

Download

In this episode, Dave and Jamison answer these questions:

  1. I am a junior developer with a low salary but I’m happy with my job.

    Recently, a personal/family problem occurred I needed more money to pay for it. I am three months away from my EOC (end of contract).

    I’ve found a job referral from my dear friend with higher salary and more benefits and I’m planning to apply. But after told my manager about my plans on leaving they told me they wanted to assign me to a top priority project they thought I could handle. I am so worried to disappoint them.

    They’re offering a raise but it’s not close to the other job. I’m afraid to ask for more because I don’t feel confident with my skills and I believe other people deserving it more. What are your thoughts?

  2. Hi guys, I am starting up a company in a few weeks together with a friend of mine. I’ll be the only developer in our new firm (for now!), while he’s got the domain knowledge. I’m not so worried about getting the tech stuff up and running. I get no constraints when it comes to the tech stack I choose, which is fantastic!

    What worries me is how to get into this brand new domain as quickly as possible, so I am able to deliver some value (MVP). Do you have any tips for how to go about this? I know I am not going to be an expert in the field, so at some point I just have to accept that and start coding. Anyways, I’ll learn more on the way..

    Thanks for a great show btw, Regards from Runar in Norway

Episode 175: Famous devs at conferences and becoming obsolete

Download

In this episode, Dave and Jamison answer these questions:

  1. Hi Dave and Jamison, thanks for the awesome show.

    How should I conduct myself at software conferences when my dev community heroes are in the midst?

    I recently attended a conference where one of my developer heroes was in attendance and I was really looking forward to meeting them. I couldn’t muster up the courage to introduce myself. What do you do in these situations to break the ice and not come off as a creeper or a nuisance? It’s a weird feeling to hear someone’s voice on a podcast every week or read their blog posts and feel like you are best friends with them while knowing that the other person has no idea who you are. Am I overthinking this?

  2. Recent new listener here and I must say that I love the show and to keep up the good work. My question can possibly be answered with the standard soft skills answer BUT I have my reservations about quitting my job. I work at a consultancy doing work in a niche web development framework that interfaces with an old monolith ERP system that I’m just not excited by but I am very good at creating web applications in.

    I know eventually these skills will become obsolete, and I had a new job opportunity recently that I decided not to take. Am I being stupid?

    Should I stay in the niche and hope I can get a newer job in the future where they just accept I can learn new tools?

Episode 174: Bottleneck manager and how to tech lead

Download

In this episode, Dave and Jamison answer these questions:

  1. “I’m into my second job of leading a team of software engineers and want to level up my coaching skills. In my first role I accidentally fell into the deep end of management “fun” by taking on a team of 10 people. One of the big problems I faced was being the “go to” or “sign off” person for a lot of different things, and I perpetuated this problem by showering people with my incredible answers (based on my obviously incredible know-it-all-ness) and thus reinforcing my goto factor. I was aware of coaching as a concept then, but didn’t incorporate it into my leadership style, which I believe contributed to my eventual burn out in the role.

    Over the last year in my current team lead role I’ve been much more deliberate about various aspects of leadership, but my coaching prowess is still struggling. When I’m asked questions by my team, my default response is to jump to a specific answer based on my own opinion, and it’s only afterwards that I slap my forward and yell out “missed coaching opportunity!” (as people near me back away slowly with concerned looks on their faces).

    What are some effective techniques to try and build a habit of using coaching as a primary means to help my team work through problems?

  2. I just became a technical lead for a team at my company. I’ve never held a leadership role like this before. Do you have any advice for how to do a good job?

Episode 173: Newbie burden and getting a 25% raise

Download

In this episode, Dave and Jamison answer these questions:

  1. Hello! Love the show ❤️

    I’m 6 months into my career as a software engineer at a very large company.

    As a new engineer, I’m often lost and confused, especially since my team is working on a green field project. My mentor is very helpful and patient with me despite all of my questions. I’ve thanked him countless times and publicly called out his support at standup and in front of management basically everyday. But I still feel like this isn’t enough. He’d never say it, but I know I’m such a burden to him and slow down the team.

    Other than quitting my job to alleviate him from my near-constant “Please help” messages, how can I:

    1) show him how much his support has meant to me and get him the recognition he deserves

    2) stop being such a drain on his productivity/life

    Thank you!!

  2. I’m a Senior Software Engineer, and I played the salary game with a recently promoted Mid-Level engineer on my team, who, in a gross violation of the rules, not only volunteered his own salary, but one of another Mid-Level engineer. In retrospect he was a bad one to play the game with.

    Anyway, it turns out they’re both really close to me now, and are both making a good deal more than I was 5 years ago when I was promoted to Senior. This is mostly (maybe entirely) because I was a horrid negotiator when I first started at the company. It was my first ““real”” job, and it turns out I really lowballed the company during salary negotiations. I’m pretty ready to leave the company (for reasons both personal and professional), but I’ve submitted a talk proposal for an industry conference that takes place 6 months from now. In order to give the talk I’d need to still be employed by the company, so rather than ordering the Soft Skills Engineering Special and quitting my job, I’m going to give it a shot and ask for a 25% raise.

    My question is what advice do you have for this conversation? I’ve read all the usual ““state your value, don’t make it personal, etc”” stuff, but do you guys have anything else that’s been effective in your experience on either side of this?

Episode 172: Contracting and American email etiquette

Download

In this episode, Dave and Jamison answer these questions:

  1. I’m a Full Stack Developer. I feel undervalued at my current job and I am looking at other opportunities. Many recruiters approach me on LinkedIn with contract-to-hire positions. Usually this means the benefits are not as good as direct hire positions and that the company can just dispose of me when the contract is done (after 6 or 12 months, generally). Salaries seem to be higher when contracting, though. Have you ever worked as a contractor for a large company? Would you recommend it? How likely is it that companies use this type of employment as a way to temporarily hire somebody for a specific project and then get rid of them once it’s done? What signs should I look for to avoid such companies? Does contracting actually make a difference? I live in Oregon, where employment is at-will anyway, so I can get fired at any time without any warning.

  2. Hello, I’m a mechanical engineer from Brazil. I really love your podcast. As a mechanical engineer I don’t develop software but I believe the soft skills are important to everyone. I work in an American multinational company and I often talk or send e-mails to the engineers there. However, our culture is different so I don’t know how to behave or how straightforward, informal or political I must be. I’m always afraid of offending someone. What kind of things I never should say or do when dealing with Americans? We Brazilians become friendly and intimate very fast. Do you guys notice these kind of different behavior from different cultures?

Episode 171: Unwilling mentorship and tortoise vs hare DevOps

Download

In this episode, Dave and Jamison answer these questions:

  1. Hey guys, love the show. I’m starting to realize that our QA engineer lacks some skills required to do their job effectively. It’s now starting to affect my work and I can only see it getting worse. I’ve tried approaching them about their work and given them some pointers on how they can improve. I’ve done several pair programming sessions as well. They are a bit stubborn though and I don’t think they will change until things get a lot worse when they realize their mistakes first hand. We are a small team and I’m the only other member of the team with automated testing experience.

    Should I be having a discussion with my manager about this? The company is pushing for more automated testing and if the problems are addressed now it would be easier going forward. I’m hesitant to say anything in case I open up a can of hate worms though or get them fired as they are a nice person.

    P.S. I’ve only been here a couple of months so moving jobs won’t be an answer for me on this one ;D

  2. Greetings from Germany,

    I am coming from the Infrastructure side of things, and we are a team of engineers with 0-3 years of experience getting into DevOps (tm). Often we encounter new tech-stacks that involve a lot of concepts to learn (like AWS, Elastic, CI/CD, System Provisioning). The way we approach these topics leads to some conflicts. Most of my colleagues like to jump into the water and set up production systems based on a mix of trial & error and copy pasting examples form StackOverflow. I on the other hand try to do things a bit slower by learning the basic concepts and applying them together with examples to get a deeper understanding of the system.

    My approach is slower but often leads to more robust and thought out systems. However it leads to my boss and my colleagues often eyerolling me for seemingly “overthinking” it. But I also see the appeal of the other approach, since it allows for fast results and pleases the stakeholders. But I see a lot of issues and often time consuming restructuring projects coming from that.

    Should I just give in and swim with the stream while i suppress my inner nerd cracking down on things?

    Loving your Podcast btw and recommend it to all my fellow tech nerds. :)

Episode 170: Code rage and code review etiquette

Download

Vote for Soft Skills Engineering on the Hackernoon Noonies awards for best Dev Podcast!

In this episode, Dave and Jamison answer these questions:

  1. How do I stop getting angry at other peoples’ code?

    Often when solving a complicated problem or implementing a feature, I have to modify or at least use systems designed by someone else. Often I find myself thinking ““Why did they do it like this??? This is so dumb!”” and literally getting mad in my chair. This happens no matter who wrote the code, and occasionally I discover that the author of the code was in fact Past Me.

    I know logically that everyone codes the best way they know at the time. So how do I avoid such a visceral reaction? Is this a common problem? Is this why many programmers seem to be Grumpy? My frustration often derails my focus and makes problems take longer to solve than they need to.

  2. What is the right etiquette for a code review for a pull request? I recently had an amazing code review. The reviewer pulled my branch, make a branch for changes he suggested and those changes all led to better and cleaner code. I felt the reviewer really tried to understand my design and test every suggestion before he wrote it. I felt that my code really got respect from the reviewer. However, a lot of my code reviews are just passive aggressive nitpicking like the comment formats are not right, the variable names aren’t clear enough. The worst was when I got a comment saying “this is already implemented” which after hours of figuring out what it meant was a different thing that would not work in my case. It seems like people have different ideas of what code reviews are and the etiquette and the expectations for it. As a reviewer and a reviewee, what should ideally happen in a code review process? Right now most code reviews are exhausting and infuriating experiences.

Episode 169: Conspiracy theories and flexible schedules

Download

Vote for Soft Skills Engineering on the Hackernoon Noonies awards for best Dev Podcast!

In this episode, Dave and Jamison answer these questions:

  1. One of my co-workers at the software company I currently work on has an ‘uncommon’ set of beliefs that include, among many other things, a strong mistrust of mainstream science. He is currently very concerned about the effect that Wi-Fi signals have on our health and wants the company to make some changes to our Wi-Fi hubs and our devices’ wireless connection usage. I’ve found in the past that it’s not easy to have a conversation with him about this type of topic. How can I be respectful to him and not undermine our work relationship while not giving in to connectivity inconvenience based on fringe-science beliefs?

  2. Hello! I love the show! The humor interjected into real advice (or real advice injected into humor?) makes thinking of boring and scary things like coworker relations or quitting your job sound fun! Everyone should resolve conflict and/or quit!

    I just started a new gig and I’m running into a situation I haven’t before. We have flexible work hours, but, unlike at previous jobs, people actually use them! I am meant to be pairing with another dev who is working quite different hours than me. I have a couple questions.

    1) How do we communicate about this clearly? I tried to set expectations at the onset, but it seems we missed the boat. I asked when he works, told him when I work, and it didn’t seem this far off. But on a day we’re supposed to pair, he’s here an hour and a half after me, which means I’ll leave an hour and a half before him.

    2) How do we make the time together the most effective? How can we turn about six hours of work into something meaningful, given normal distractions of meetings, bathroom breaks, etc?