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.
Similar Podcasts
The Infinite Monkey Cage
Brian Cox and Robin Ince host a witty, irreverent look at the world through scientists' eyes.
The Top Shelf
ThePrimeagen and teej_dv are on a quest to find the best possible technical speakers and ask the best possible questions we can find. You all know ThePrimeagen can't read, so this is a great format for him to really shine. Teej is here to make sure that Prime knows who the guest is and also to interrupt Prime wherever possible
24H24L
Evento en línea, de 24 horas de duración que consiste en la emisión de 24 audios de diversas temáticas sobre GNU/Linux. Estos son los audios del evento en formato podcast.
Episode 120: Layoff Decisions and Overworking Peers
In this episode, Dave and Jamison answer these questions: How do managers make firing decision during company wide cuts? Recently our company went through spending cuts and x percentage of people were laid off as part of this exercise. On one fateful day, our manager informed us that he let go John Doe as he had to fire someone. Overall John Doe was a decent senior developer and was with the company for 10 plus years. My gut feeling is that he was let go because he simply didn’t (or couldn’t) move to management and was too old for a developer position. Does ageism play a role when a firing decision has to be made based on non-performance reasons? I’m in my early 30s, I have a spouse and a small child, and work remotely as a software engineer. One of my peers, let’s call him James, is about 10 years younger than me, works on-site, and is single. He’s a good developer and really friendly. The problem I have with him is that this job is his life. It isn’t uncommon for James to work 14 hour days (including weekends sometimes), submitting code for review at midnight, then back in to work bright and early the next day. This is not at all encouraged at my company. Most everyone comes in at 9 and leaves at 6. I feel a little bad for James because I get the sense that he’s lonely, and doesn’t have much going for him outside of work. However, it’s frustrating working with a peer who puts in way more time at work when my home life literally makes that level of dedication impossible. James receives a lot of praise for the hard problems he works on after-hours. I know my performance is fine and I don’t need the praise per se, but it’s frustrating to feel that I’m going to be compared to him informally by my co-workers in terms of what we get done, and formally, as promotion opportunities come up. I honestly wish someone in management would ask him not to work after-hours, but that’s probably not going to happen. Thoughts on how to handle this?
Episode 119 (rerun of episode 77): My boss wants me to speak at conferences and how to get better than a 2% raise
In this episode, Dave and Jamison answer these questions: I started my first job as a developer 2 months ago. My boss wants me to give talks at meetups and then later, conferences. I have no idea what I can talk about as I am still very much learning. How do I find a topic to research and work on so that I can deliver value to people listening to my talk? What are some things I can try to increase the scale of my annual raise or bonus? For example, if my company averages a 2% raise each year, but I really want a 3% raise this year, how might I go about it?
Episode 118: Asking For Help and Speaking Up
In this episode, Dave and Jamison answer these questions: What is the right balance between asking for help and figuring things out on my own? How do I know when it’s time to ask questions or when it’s time to spend more time drilling down into the code? Been at my first job for a couple of years now, and I am very quiet in the workplace and still find it hard to open up, be assertive, and speak up in meetings. When I try to go out of my comfort zone (arguing about technical decisions, setting up and driving meetings), I don’t think my manager appreciates my efforts. I am told that I need to voice my opinions more and have more of a two-way conversation. I feel I’m not given concrete chances to improve, and it’s very demotivating. How should I deal in situations like this? Job pitch time! Are you interested in working at Walmart Labs? Email Jamison at jamison.dance@walmartlabas.com!
Episode 117: Defense Industry Stigma and Responding to Negative Feedback
In this episode, Dave and Jamison answer these questions: Will working as a defense contractor hurt my future employability in private industry? I work as a full stack engineer for a small defense contractor with a security clearance. My company is awesome; All of my coworkers are super talented/motivated. On top of that we get to work with modern tech stacks (React, Elm, Go, Rust, Kafka, you name it, we can use it). I have heard rumors that it’s hard to move back to private industry after working in this world due to working with old/legacy tech and the view that defense contractors generally have less than stellar engineers. Is this true? I feel I’m in a bit of a unique situation due to how good I have it at my company and feel I could demonstrate that my technical chops are up to par with industry standards. We we just did a 360 performance evaluation where we provided “strong points” and “improvement suggestions” for two colleagues assigned by management. The completed reviews were sent to management and management forwarded it to the people under review. One of the reviews I received was very positive but the other one, from a senior teammate I work closely with, had a very harsh and exaggerated “improvement suggestions” section and very short and unconvincing “strong points” section. I’m not sure if he really considers me incompetent or he just wrote the suggestions, which do have some truth in them, without bothering to put things in perspective and without considering the impact it can have on my career and motivation. I feel a bit resentful towards the reviewer and am worried about the potential negative consequences of this review (I am relatively new to the company, joined 7 months ago). For now, I am trying to act as if nothing happened. I am hesitating whether I should talk to this person. On one hand, he can write what he wants in the way he wants. On the other hand, I feel the review is unfair and too negative. I would appreciate your input on this.
Episode 116: Weekend Warrioring and Reaching the End of the Career Ladder
In this episode, Dave and Jamison answer these questions: I work at a growing start up, and while I was hired as a web dev, I have started working on unrelated but cutting-edge tech for the company during off hours. My boss has encouraged me to do this with monetary and office life bonuses, and he has reworked our business model to focus on it. The only problem is that our CEO overpromises and pushes me to my mental and physical limits for very short turnarounds. I still have to do my regular job. While I love the challenge, and love the company, I feel set up to fail. And the 40 hour coding sprints over the weekend are killing me. I feel like I’m setting a horrible precedent because somehow, defying all logic, I’ve met the deadline each time. How far is too far? Should I keep killing myself, or take the agony of defeat on a project. I’m currently working as a Senior Solutions Architect after a career progression that looks like this: Junior Developer, Intermediate Developer, Senior Developer, Junior Architect, Intermediate Architect, Senior Architect. In a recent one-on-one with my boss, we were discussing my future career options and concluded that the next step for me would be one of the following three positions: VP of Engineering, Chief Architect, or CTO. According to him, all three have similar levels of prestige, pay and influence, but vary in the nature of the job. Reflecting on this conversation, it dawned on me that I’m close to the final stage of my career. I’m currently 39 years old, so I’m now thinking to myself: Is that really it? One more promotion and I’ve successfully climbed the corporate ladder? End of the line. Time to retire. Nothing more to strive for (other than working on the most interesting projects). So, could you please talk about the software career progression, what to aspire to and how to measure one’s own progress once one has reached the top of the ladder?
Episode 115: Sharing Your Salary When You Leave and Hiring Decisions Overruled
In this episode, Dave and Jamison answer these questions: Let say you accepted an offer from another company and you turned in your 2 weeks notice. If your current employer ask you how much you will be making at your new place, should you tell them? Recently I was on a panel of people hiring for my company. We were hiring for several positions and were given a fixed headcount. When it came down to the last spot we interviewed two people, one of which was a referral from someone higher up in the company. This person did terribly on the interview and we as a panel decided that we would offer the position to the other person, who was the strongest of all the interviewees. And all was fine until several days later when we received an email from HR showing the full list of people to be hired, and lo and behold, the list contained all the people we chose, plus one extra person, the referral person. Somehow there was magically more headcount for this person and now he is being hired. I’m not really sure how to feel about this. Because now we have a new person that is going to enter the company and I feel if he doesn’t perform well it will reflect badly on me and the panel that were involved in hiring. Also I am confused at this clear example of nepotism happening in my company. Should I bring this up with someone in the company? I’m leaning towards no but I am also confused and annoyed at what happened.
Episode 114: Story Point Commitments and Measuring Productivity (Episode 79 Rerun)
In this re-run of episode 79, Dave and Jamison answer these questions: It seems like my teams always miss their story point commitments. Is this normal? How do you change it? How do you actually measure developer productivity? The article comparing research on productivity in static and dynamic type systems is here. It is a great read. Jamison also mentions Goodhart’s Law. Read more about it here.
Episode 113: Quitting Your First Job and Too Many Responsibilities
In this episode, Dave and Jamison answer these questions: How do I quit my first job if I’m working with a manager I love? I started my first full-time job about two years ago and I’m starting to think about looking for a new job, both because I am ready for new challenges and I’m ready to move to a new city. I have a great working relationship with my boss, so a part of me wants to tell her about my interest in finding a new job, both so that I could use her for a reference and also so that I can be honest with her about my intentions. She’s been a great boss and mentor to me, so there’s a part of me that doesn’t want to jeopardize our working relationship. But another part of me feels like I might be jeopardizing my presence in my current office if I make it clear that I am looking to move on, especially if my job hunt doesn’t go as smoothly as I hope. How do you deal effectively with rapidly increasing work responsibilities? My technical lead was recently promoted to management. Being both ambitious and the only Sr. Engineer without retirement plans in the next 4 months, I immediately stepped into the power vacuum and inverted a binary tree faster than all my coworkers to establish my position as new tech lead. After a few months the other senior engineer on my team retired, and I’ve ended up holding the bag for my new job responsibilities, my old responsibilities as a Sr. Engineer, AND the departed Sr. Engineer’s responsibilities. I told my manager how much was on my plate and that I was afraid my work output would suffer, and her response was to throw money hand over fist at me and promise to backfill both Senior positions within the next 12 months. How do I get through the next 18 months without losing all my hair? Are there any strategies to make sure the team doesn’t go up in flames when I forget about a key deadline? Or at least position myself so that nobody can tell it is my fault until I can make a subtle getaway in the brand new Ferrari I’m going to buy?
Episode 112: Disinterested Interviewing and Layoff Fallout
In this episode, Dave and Jamison answer these questions: Is it common for developers to take an interview without real interest in a job? Is it common for a company to reject a candidate because they think candidate is not interested in a job? Recently I had an interview and I was rejected even though I though it went really well. From internal channels in that company I learned that the interviewer thought I wasn’t really searching for a new job and was just doing interviews for fun or to improve my skills. That was really frustrating. And also, well, flattering. But still, I don’t understand what signals I may have given. I asked questions about the company, processes, etc. I prepared really well. And I asked for a salary that’s quite significant for our market. The only reason I see is that I always worked remotely and this is position in an office. By the way, LOVE your show! What happens when a wave of engineers leaves your company? I work for a startup that went through a brutal round of layoffs, before stabilizing. We’re building the engineering team back up, but the core team members that built our platform are gone. How do we approach maintaining things, adding new things, technology decisions, etc?
Episode 111: Dogma Rehab and Getting a Co-worker Fired
In this episode, Dave and Jamison answer these questions: Hello Jamison and Dave. 💕 your show! 👏 I have been a C# dev for 7 years. Last year, I learn Erlang. I fell in love with functional programming. After that I learned Elm and oh boy… I had never dreamed a compiler/computer could do so much work for me, preventing so many mistakes that would otherwise require an unholy number of “unit tests”. The thing is I can no longer find satisfaction with any job. I love to write software, but at some point I became almost dogmatic. I abhor more and more the discipline it takes, in certain languages, to make my code be as pure and testable as in an FP language. I had to do so much un-learning, that now I feel that I am refusing to un-un-learn all these different ideas and paradigms and just go back to making the tests happy. I seek your humorous words of wisdom on how to find contentment with my job again, without looking at a language and dreading it. I have a co-worker, who is pretty incompetent technically. Over the past few years that I’ve been here, he has proved time and again that he is incapable of learning and really grasping how things work. He is able to accomplish basic feature work, but not capable of making good architecture decisions, or why a given framework should be chosen, or how to solve harder problems (I’m not sure how to describe this. But for example, how to build a resilient API client). However this person is great at creating slides, and presentations, and JIRAs, so I think management thinks they are ok at their job. He’s also a nice guy. I’m not sure how to say, hey you suck at your job. Which is pretty harsh. Or to suggest to someone that he should be replaced.
Episode 110: Team Spirit and Half-hearted Recruiting
In this episode, Dave and Jamison answer these questions: How do I help foster team spirit in a newly created team? I work for small startup (fewer than 10 people). My boss wants to hire another developer and asked me to look around for people. I don’t feel particularly strongly about this team. I’ve been there for about a year, but I don’t imagine myself working there for another twelve months. I don’t want to refer my friends because I don’t want them to join a team I don’t feel good about. On the other hand, I want to work with great people. I see how other devs may enjoy working in such an environment, but it’s just not for me. In the long run, I obviously want to leave this job, but what would you recommend doing in short term? Is hiring under such circumstances really that different than hiring if I liked this team?
Episode 109: Critical Junior Dev and Introducing New Tools
In this episode, Dave and Jamison answer these questions: I run a small dev team. One junior developer constantly openly challenges things that don’t meet this their preference. As a manager I don’t want to stifle innovation, but need to find a balance on being able to meet business goals on schedule. I want to add an automatic formatting tool to our code, but my co-worker is resistant to the idea. He started this project and I’m brand new to it. I don’t want to push it too much, but I would really love to use it. I’ve shared with him all the reasons that it would be good, and addressed most of his concerns. I’ve also submitted a PR to show him what it would look like. Also, he is in another timezone 9 hours away, so communication is all on GitHub, Slack, and the occasional video call (if I wake up early). He finally said if it really helps me, then I can go for it, but I don’t think he would like it if I did. Should I go for it? Try to convince him more? Or just drop it?
(Rerun) Episode 35: Attracting Talent and Quitting Responsibly
We’ve got another re-run this week, as Jamison and Dave both recover from being sick. We’ll be back with a new episode next week. In this episode, Dave and Jamison answer these questions: How can I attract talent? How do I quit without burning bridges? This episode originally aired on November 15th, 2016.
Episode 108: An Insecure Teammate and Disclosing Past Ratings
In this episode, Dave and Jamison answer these questions: What do I do about an insecure teammate whose insecurity causes them to lash out at others? I’d like to change teams within my company, but I’ve had some negative performance reviews in the past. How early should I disclose this to my prospective manager? Jamison talks about the Khan Academy Engineering Principles, which are great and which you should read.
(Rerun) Episode 40: Office Visibility and New Tech
In this episode, Dave and Jamison answer these questions: How can I encourage my team to be more visible in the office? How do I learn new technologies without going through a noob phase?