DiscoverSoft Skills Engineering
Soft Skills Engineering
Claim Ownership

Soft Skills Engineering

Author: Jamison Dance and Dave Smith

Subscribed: 5,975Played: 194,374


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.
414 Episodes
In this episode, Dave and Jamison answer these questions: This is my first time conducting technical interviews (most of which have been virtual), and I had one interview where I had a strong feeling that the candidate was cheating. They breezed through the short problems I gave them, and they were able to explain their reasoning. But during the live coding problem, they sat in silence for five minutes, and when I asked them what they were thinking, they didn’t respond. Then they started cranking out perfect code without explaining anything. How do you address cheating in interviews? What if it turns out to be just nerves? I don’t want to assume anything, but I also wouldn’t feel comfortable confronting them about it either. I work as a team lead for a small group of 4 other devs. Our Product Owner is currently handling the requirements for new features to onboard a new large client. This involves them attending client meetings and generally isolating the development team from client shenanigans which is normally great, but it’s becoming INCREASINGLY obvious that someone on the client team has his number and he’s getting HORRIBLY out-negotiated. This has resulted in a bunch of missing requirements, changing requirements, last minute feature adds, and general confusion. I’m trying to push back, but the leadership team is coming back with “Well we promised…” and my entire team is stressing out. Note that this is AFTER we were already pressured to overcommit on capacity to get these “absolutely necessary” features developed for the client to go live. I like my PO, he’s a good guy and normally does good work, what can I do to help him stop from getting his butt kicked in these meetings? (Note: the POs are neither above nor below us in the org tree, our closest shared higher-up is the VP and I obviously don’t want to escalate it that far)
In this episode, Dave and Jamison answer these questions: Dear Skillet HQ, How would you negotiate a difference in work-life balance between teams? I love my job and my immediate team. We’re a tech group within a larger non-tech business, and it’s a fun problem domain. Our immediate team has some hard-won work-life balance, in part because it would be hard to hire anyone for the role if that balance wasn’t part of the equation. However, I worry about how to communicate differences when anyone we work with - all the people we’re building software for! - have an unbalanced schedule, because, 👋that’s show-biz 👋 I even understand why other people have their role set up that way and respect it, but I don’t want to give up my balance either. How can I best handle the relationship when that difference is there? Love the podcast and the skillet-slack! Thanks for the advice, empathy and good humor. Tex Archana Listener Frustrated asks, My work keeps getting stolen in the name of code quality! I’m a new backend developer for a team at a large company. I’ve been with this team for almost 3 months now, and the company for over a year. We’re developing an application to replace a legacy system, and the current feature has fairly well described user requirements. The front end developers keep finding new implementation issues that require more backend development, so new tasks get added during the sprint. The longest tenure developer (LTD) on the team keeps finding better ways to implement these backend changes, but these ‘better’ ways sometimes don’t meet the newly discovered frontend needs, leading to longer development times. Additionally, the longest tenure developer often takes over the implementation work from me, which is frustrating! The longest tenure developer also sometimes becomes too busy to deliver everything in a timely manner!! Additionally, the state of software development maturity is very low, so I’m trying to advocate for more technical process improvements like CICD and using version control more than once per sprint! I am frustrated and finding it hard to keep up motivation when everything is such a mess, and the other devs defer to the longest tenure dev who pushes back on many of these things. My code quality is fine, but I haven’t yet learned enough about our application to be able to identify these larger, cleaner approaches. Every code review so far has had no issues with my code quality, but inspires the longest tenure dev to implement a simpler solution, and they often will take my tickets and repurpose them for the new work! I’m worried that if anyone looks at productivity metrics they’ll not look good for me, and it’s hard to say what I’ve accomplished so far. Is my frustration valid? Should I quit my job?
In this episode, Dave and Jamison answer these questions: Hi :-) I work as a Senior Data Scientist, and about half a year ago I joined a start up that was founded by a large corporation. And while this job comes with the perks of a bigger company - like good salary, paid overtime, … , - it also comes with its organizational overhead and politics: We are only about 30 people but already a quarter of us acts as managers. I write “act” because the official org chart is flat (with the CEO at the top and the rest of us directly underneath). The unofficial org chart is hidden and depending on who you speak with, you get their view point on how roles and responsibilities should look like. As a result, I’m left with putting together the pieces to build a picture that somewhat resembles the truth. So far, I’ve concluded that we have multiple (!) management layers, that there’s a power war taking place in the middle management layer, and that you can make up your own titles that mean NOTHING, because no one has any official, disciplinary authority over any one, but that are still to be respected! What a great opportunity for job crafting :-D To make things worse, I prefer and come from organizations that have a truly flat hierarchy. For example, I’m used to step outside of my role should the situation require it (like doing some managerial tasks, supporting sales, …) and that I can speak my mind, irrespective of what the title of the person is who I’m talking to. While this was beneficial in my previous positions, this does not work well here! And while I understand that adapting my behavior would be more in line with the company culture, I find this extremely difficult. On the one hand, because of the hidden org chart, on the other because we are all fully remote and I rarely see people from other teams. To avoid accidentally stepping on anyone’s toes, my current solution is to stick my head in the sand and focus on my coding. However, this leaves me disgruntled because I feel like I’m not being myself, and that I’m withholding a viable part of my skill set: to see the bigger picture and serve the company as a whole instead of just implementing tickets. Please help, I do not understand how this company works :’-D How would you navigate the situation? I don’t want to quit because, individually, my coworkers are super nice, and the work is really interesting. All the best <3 Hi, I’ve been working at a well-known multinational company for a few years now. The entire time I’ve been here, the company has been well behind what I believe to be industry standards, but they have some great perks, which means it’s been really easy for me to create “wow” ideas (just do the same thing that everybody else has been doing for a few years). At the risk of sounding full of myself, I’ve noticed that I’ve created a critical person risk. There’s not only no push for me to train others in my work; things I thought were standard knowledge is entirely new to this team! I don’t want to become the trainer for a team that has no desire to learn new skills, and I don’t want to dumb down my work either. Is there a happy medium where I can build exciting new things and not create an absolute craphow when I leave? Should I even care about it since no one else does? Show Notes The Tyranny Of Structurelessness -
In this episode, Dave and Jamison answer these questions: Hi Soft Skills! I’m writing to you as I look forlornly at my paycheck, unchanged for the last year and a half, and wonder if I’ll ever see market rate again. While I prepare my leetcoding skills for the trek that is your classic Soft Skills Adventure (quitting), I think about future interviews and wonder: how common is it to have something like a COLA clause in your employment agreement? Something like “Oliver will receive a raise of no less than the current CPI% per year”. Are there other ways to mitigate this, other than joining a company with more people and less greed? I don’t think I should have to beg for COLA-s with good reviews in hand. In fact I think those reviews call for raises! Thanks for bringing more joy to my life :), Mr Twist P.S. I am grateful I’m not paid in porridge and any reference to Oliver Twist isn’t to suggest Tech Salaries aren’t livable wages. Mr. Peanut Butter asks, I’m a senior IC at a small startup and I’m struggling to get along with an engineering manager. M has a say in my promotion and has already said no once, which was pretty painful considering the time and energy I’d spent helping their team succeed. I think there are two headwinds to M changing their mind 1) I’m FE-focused, and M’s conception of FE work is dated and simplistic. 2) M can be a bit of a blowhard. Said generously: M is a top-down thinker, quick to make conclusions, process-focused, and loves discussing architecture and design patterns. In contrast, I’m a bottoms-up thinker, pragmatic, plain-spoken, slow to make conclusions. M and I meet regularly to discuss cross-team matters, and it is my least favorite meeting of the week, even weeks that include dentist appointments. M sometimes devolves into lecturing me about software fundamentals (which I know at least a well as they do). I know from experience that there’s an M at nearly every company, so I’m reluctant to order up an SSE Special. How do I leverage this dreaded weekly meeting to turn M from a detractor to a promoter?
In this episode, Dave and Jamison answer these questions: Listener Shayne asks, ‌ I’m about to start a new gig after 8+ years at a company. I was an early employee at the current company and have accumulated a lot of responsibility, influence, and a fancy title. I’ll be an IC at my new company (also very early stage) but the most senior engineer second only to the CTO. What are some tips for this transition? How can I onboard well? How do I live up to my “seniorness” in the midst of learning a new code base, tech stack, and product sector? I managed to stay close to the code despite adding managerial responsibilities in my current role, so I’m not worried about the IC work. I really want to make sure that I gel with my new teammates, that I’m able to add valuable contributions ASAP, and that folks learn that they can rely on my judgement when making tradeoffs in the code or the product. Halp! I got into software development to become a game developer. Once I became a software developer, I found out I really enjoyed the work. My wife and I joined a game jam (lasting 10 days) over the weekend. I very quickly have realized how passionate and excited I get about game development again! But this has led to a problem - I would much rather be doing that. I find myself moving buttons around or making another CRUD end point a means to an end now, thinking about how I much rather be creating exciting experiences. How can I handle this? Quitting my job to pursue a pipe dream just isn’t feasible.
In this episode, Dave and Jamison answer these questions: I am an electrical engineer working on and off with software for about 15 years. From mainframe applications with Cobol and PL/1 to plant floor supervisory systems with SCADA and some.Net along the way. 6 years ago my husband got an offer to move to Europe and I came along. Had to reinvent myself amidst the chaos of juggling life with a toddler, learning a new language and a new social tissue. After some time I landed a pretty nice job as a DevOps engineer at a pretty cool company. However, I have never really worked with scrum or agile methodologies before and, oh boy…I found out I HATE retrospectives. Like really hate them. They bring me down every time and I anticipate them with dreadful anxiety. I feel they’re just a way to blame other people for what’s not going so well and I don’t see ownership or any improvements actually being made. Action items are frequently just finger pointing and generally about people that are not even present in the retros. In order to improve engagement my boss said every team member is now responsible for the moderation of this dreadful thing and, surprise, surprise : I am next. How can I moderate something I just don’t believe in? I believe in improvement and learning from mistakes and I genuinely believe that we shouldn’t focus on people but processes. I also have to say my colleagues don’t feel the same way as they seem to love retros (yikes!). I think I’m too old/too skeptical for this. Please help!!! Ps.: I love your show and the episode on “that guy” changed my life. I’m forever grateful for the question asker and your answer. The Letter J: Can you please talk about the PIE theory (performance, image, exposure) and its importance, especially in highly political orgs? I lost my leadership role at a large GSI due to what I believe was a poor image. I felt I could not achieve targets without some level of collaboration (which became conflict once others didnt want to actually collaborate) We hit out targets, but unfortunately, by the time I realized I was labeled “hard to work with”, it was too late. Also, I hereby declare that Jamison is the Norm MacDonald of podcast, which is my highest compliment. Dave is some other comedian, also good. Seriously thank you both for all the humor and advice over the years, it’s been helpful and validating.
In this episode, Dave and Jamison answer these questions: I am a data scientist and have been at my company for 2 years. Each of the data scientists on my team specialize in a different area of the business (growth, marketing, etc). I have developed a reputation for being the expert in my area and have worked really hard to understand my domain. I have a new data science team member who works in an adjacent area and has expressed interest in learning more about “my” area. But every time I talk to him I find myself getting defensive and possessive (on the inside). I don’t want to share my area, and I like being known as the expert, and I don’t want him working on stuff in my domain. Any advice on how to be less territorial here? Should I quiet quit? I’m a year in to a new job, and am doing well. I work for a large consulting company, and have been doing a decent amount of unpaid overtime by volunteering for internal projects that we can’t bill to our clients! The extra 5-10 hours a week have been adding up, and I feel overwhelmed. I don’t think the extra work is as appreciated as it should be. I’ve received lots of positive feedback, and my performance reviews have been fine. Am I getting taken advantage of? Will people notice if I step back and just do the bare minimum expected for my job? I like being useful, and do genuinely enjoy some of the projects I’ve volunteered for. They’ve probably also been good for my internal visibility, as I’ve gotten to have my name on some large internal announcements and have had some good face time with very senior people. If I end up sticking around here, it’ll probably be good, and I wouldn’t mind a promotion. But I’m exhausted, and it’s starting to get in the way of my personal life, hobbies, and even client work sometimes. I’m also wondering if that time would be better spent on upskilling or open source or something outside the company. How far can I cut back without repercussions?
In this episode, Dave and Jamison answer these questions: Listener Brad asks, I am currently a Senior Engineer with a small software company. I have been developing software for more than 20 years. We were recently acquired by another mid sized company. Since the acquisition, things have been going downhill. It feels like they’re trying to nickel and dime their employees to death. They moved from a bi-monthly to bi- weekly pay, from accrued PTO to Flex PTO, they sat on merit raises for over 2 months , and have paused all promotions unless you are getting a promotion to management. We have a number of engineers who are deserving, but broaching the subject with HR results in excuses, pushback or silence. I have about a year and a half to be in a position to retire but I love what I do and plan to continue for many more years in the right environment. I’m really on the fence as to whether I quit for a new role or hope that they somehow become more efficient. I’ve been doing this long enough to know they will probably not change. So would you quit? Hello Dave and Jamison, My name is Angelo, and I’m writing to you from Italy. I’ve been enjoying your podcast for quite some time. I’m reaching out because I’ve been working for four years at a small company with 11 people in the cultural heritage sector. Although the company produces software, there are only 2 programmers (myself included), while the rest are roles like graphic designers, art historians, and archaeologists. It’s a rather unique company in its field, and for that reason, I’m happy to work there, also because I have many responsibilities related to the company’s performance, probably more than I would have in a multinational corporation. However, there’s a catch. The fact that there are only two programmers, and in this case, I am the more experienced one, often makes me feel that I don’t have the opportunity to interact with more experienced individuals, and this might hinder my growth as a professional as opposed to being in a team with more programmers. My question is: what can I do to compensate for the lack of work interactions with other developers and to keep myself updated? I’ve always read that the best growth happens in a company where you’re surrounded by more experienced people, but in this particular case, I find myself in the opposite situation. I participate in Telegram groups and often read software development books to stay updated, but it’s also true that the hours outside of work are meant for rest and leisure, so they only go so far. How can I keep pace with those working in larger teams on bigger projects? I don’t intend to change companies at the moment. Warm regards from Italy, Sinhuè
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.
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.
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.
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!)
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?
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?
In this episode, Dave and Jamison answer these questions: Listener Jim asks, I am currently a senior software engineer in a well funded (but not profitable yet) startup. I am highly effective and well regarded, to the point where the tech lead also comes to me with questions and always takes my technical input onboard. I also get along very well with the rest of the team and with my manager. I am confident that I am in a good position to bargain for a decent pay bump, however there’s a chance I might be asking for pay that exceeds the salary of the tech leads or even my manager’s. Would it be a hard no from the start if that’s the case? Do you know of situations where certain people were paid higher than someone from a higher position? Thank you, I’m loving the show! I did it. I crossed over… I’ve been a software engineer for nearly 25 years. I worked my way from junior to senior, staff to principal, and for the last six years I’ve been a technical articect. I’ve been very deliberate in my caraeer path and told myself that I would always be on the tecnical side of the wall rather than the managerial side. Most of my boses over the years have been former technical folks that just seemed to have step off the technology train at some point. Maybe they couldn’t keep pace with the rapid changes in their older age, or maybe they just didn’t like IC work, who knows? But I always had this feeling about them, like “they just don’t get it anymore”, or “their technical knowledge is so outdated, how can they make good decisions”? Much like a teenager looks at their parents who stepped off the fassion train many years prior and now doesn’t want to be seen in public with them. Well, I just accepted a job leading a team; with headcount, and a budget, and the works. It was not the role I really wanted, but in this market, I didn’t have a ton of choices. It’s billed as sort of a hybrid Architect/Manager role, but it *feels* like I crossed a threshold. I feel like my future will be that of a retired race horse living out the last of his days if the middle-management pasture. So, 2 questions: What can I do to not become a hollowed out shell of myself as the technology train eventually starts to out pace me, and eventually speed away at ludicrous speed, because I’m not “doing it” every day Is this just the envitable for every SE? I mean, I don’t see a lot of 70 year old coders, so this is normal, right?
In this episode, Dave and Jamison answer these questions: How do you mentor a junior-level contractor? My company has been hiring a lot of contractors lately. Sometimes they hire out a full team form the contracting shop to build a particular feature. Other times, it’s an individual developer, but with the same general mandate: implement some specific set of features from our backlog over x number of months, then move on to the next project somewhere else. Generally this happens when we have extra budget that needs to be spent for the year, etc. It works well enough when the contractor is experienced and able to self-direct and focus on just getting the work done; but sometimes the contractor is less-experienced and needs lots of guidance and mentorship. Hiring and mentoring a less-experienced full-time developer is a long term investment. Over time that person will become more productive and hopefully stay with the company long enough to provide a net benefit. But when the person is only contracted for a short time, it seems we’re effectively paying the contracting agency for the opportunity to train their employees for them. As a senior engineer / tech lead, should I devote the same amount of time to mentorship and growth of these contractors, or should I just manage their backlog and make sure they only get assigned tasks that are within their ability to finish before the contract runs out? Hello, I have a really hard time not attaching my identity to my work. I know I’m not supposed to, but i really take pride in what I do and i feel like if I don’t, my performance would take a hit. But where this really bites me is taking it really personally when things go wrong (like when a customer submits a bug report and I find that it was something I wrote, or when I take down prod and have to involve a whole bunch of C suite people to address and post mortem the issue). I understand humans make mistakes but it eats me up so much inside every time. I know all these things but I have a hard time really internalizing them especially when things go south at work. What are some practical ways I can train myself to approach things without emotion?
In this episode, Dave and Jamison answer these questions: Listener Davide says, I have a lot of ideas for significantly improving manufacturing processes, but management wants us to focus on business “priorities”. These are fun tasks such as making sure part numbers are replicated in two disconnected systems that have no way of talking to each other. Makes getting Master’s degree feel like time very well spent. I end up setting aside some time and doing the legwork for my improvements in secret, and showing my boss when the solution is 90% there. I have a fear that they think the solution appeared out of thin air and required no work, but also if I told them in advance I was going to spend time on it, I would get told off and forbidden from doing it. Am I alone in this? Am I stupid? Should I quit my job? Have I written too much? Is the world really relying on a handful of Excel spreadsheets which are keeping us one circular reference away from total annihilation? Thanks for reading this far, and greetings from a listener from some place in England. Sorry for the long question and thanks in advance for any help or advice :) I’ve been working for a small 20-year old B2B company. It makes money. The work-life balance is amazing. Our workdays are 6 hours, and we are remote. On busy days, I may work 3 hours a day. So everything is great. But I hate it. I have no interest in the product. Everyone picks one ticket and goes to their corner to fix it. No collaboration unless necessary, which is rare because there are no complex challenges. I feel no one in the company is ambitious technically. It feels like I’m not growing and learning. My previous company was the exact opposite. Brilliant invested colleagues. Lots to learn and I was always inspired to work with them and learn from them. I felt like the stupidest person in the room. They cared about technical decisions and problems a lot. It was as close to my ideal workplace as it could be (the product was meh, and the management sucked). But I got laid off after 5 months of being there. Now whenever I talk with anybody about how I feel demotivated, and lifeless, and want to move on from this company, they say I’m crazy. And if I’m looking to learn and grow I have all the time in the world. I want to be in an environment that challenges me, inspires me, and pushes me to learn during work hours at least. I fear that if I stay here for a few years, I will not have the experience and resume needed to move to a company like the one I was in before I got laid off. Am I wrong to want to move out of this company in this situation?
In this episode, Dave and Jamison answer these questions: I’ve recently started a new Gig as a Senior Developer/Tech Lead at a company where we are our own clients, using the software we develop in-house. I’m encountering a bit of a hiccup, though. Our product owner, is primarily focused on support and doesn’t provide formal Acceptance Criteria. This means I spend a lot of time sending follow-up emails to confirm our discussions, drafting these criteria myself, and handling the management of boards and work items. Another challenge is our product owner’s enthusiasm. He’s full of ideas and tends to expand the project scope during our meetings, perhaps not fully realizing the additional development work and the impact on our timelines. I sometimes think that if he wrote down his thoughts, it might give him a clearer picture of the challenges we face in development in keeping up with these changes. I’m in a bit of a quandary here. How can I gently nudge him to take on some of these tasks, or should I discuss with my boss how this is taking up about 1 to 1.5 days of my week? While I’m more than willing to handle it, especially with the prospect of moving into a management role, I also don’t want to set a precedent that creating Acceptance Criteria and managing Work Items are part of a developer’s job scope – at least not to this extent. Any thoughts? Sean asks: Hi Soft Skills Engineering, I love your podcast and I have a question for you. I have a very good memory and I can recall details from a long time ago. This sounds like a great skill, but it also causes me some problems at work. Often, I get asked questions by my colleagues or my boss that are not related to my current tasks or responsibilities. For example, they might ask me about the content of an email that they sent or received a year ago, or the outcome of a meeting that I attended (but also did they). They ask me because they know I probably remember, and they want to avoid searching for the information themselves. This annoys me because it interrupts my work and makes me feel like a human search engine. I want to be helpful, but I also want to focus on my actual work. I can’t redirect them to my boss, because he has a very bad memory himself. How can I deal with this situation without being rude or lying about my memory? How can I set boundaries and expectations with my colleagues and my boss? And without gaslighting them into thinking I already answered their questions, of course. Thank you for your advice.
In this episode, Dave and Jamison answer these questions: Listener Bobby ForgedRequest asks One of my coworker, who is the nicest, most humble person I’ve ever met, is about twice as productive as I am! They’re super-uber productive! They close about 2-3x as many tickets as I do during the same sprint. For reference, I’m a software eng II and they’re a senior dev. Their work is very solid too, and they’re not just selecting easy, 1 point tickets to pad their stats. How do you cope with a super star teammate like this? Do I direct more questions towards them to slow them down? Do I volunteer them for more design heavy projects? Jokes aside, I’m curious if this is something that you’ve seen in your career, and if you were a manager, would this make you feel like the other, not-super-uber-smart teammate, is just not doing enough? Is the answer as simple as “well, sometimes people are just very, very gifted”? In my previous job of 5 years, I worked only 3 hours a day due to a low workload. Seeking a change for career growth, I switched jobs a few months ago, exposing myself to new technologies. Initially stressful, the pace has slowed down, and there’s no external pressure to learn. Despite getting praise and raises for minimal effort, I aspire to be a smarter software engineer. How do I motivate myself to learn and step out of my comfort zone when there’s no apparent reward, considering I’ve easily found new jobs and advanced in my career without exerting much effort?
In this episode, Dave and Jamison answer these questions: My team are about 4 months into transitioning from a scrum/kanban way of working to a more traditional scrum/sprint way of working. I feel like our scrum master is “weaponising” some of the scrum practices in order to show up weak points and failures in the team, rather than working with the team to ease us through the transition and make gradual improvements. In private conversations with me and some other trusted developers (lol jk I clearly shouldn’t be trusted as I’m writing in to Dave and Jamison) the scrum master speaks about how little refined work we have in our back log, and how they are looking forward to “exposing bottle necks” in the team. As they expect this will lead to pressure on our PO and Business Analyst and force them to step up their game. Whatever amount of work we bring into a sprint is law, and they forbid more tickets coming onto the board mid sprint (even if all the tickets are done half way through the sprint). If one single ticket is on the board they will try to block more tickets moving into ready for Dev as they believe we should all be focusing on getting the highest priority pieces of work into the done column. And they take no notice when I’ve expressed the issue with this too many cooks approach. They’re a nice enough person outside of a work context. But in work, it really feels like they’re setting us up to fail (and sort of releshing in it). Dissent is rising in the team, and everyone from all sides feels unhappy. Can you recommend any action I could take to prevent the failures that are inbound? For context, I am a junior developer working for a large company. Within my department we are split up into “SCRUM” teams made up of around 6 Developers, 2 testers, a scrum master, a Business Analyst and a Product Owner. The senior developers within the team have not taken any action other than to complain in secret about the SMs behaviour. Before the tech recession, I would recommend engineers stay at a job for 12 months before looking for a new job in order to avoid having the stigma of being a job hopper. But with the tech recession enabling employers to be more picky, is 12 months long enough? Or should engineers stay at a job for even longer than 12 months before looking for a new job?
Comments (16)

Maryam Ketabi

You are fun and educational too, thanks 🩵

Jan 18th



Mar 7th

Khigha Ubisi

I'm a tech Noob, looking to immerse myself in the field. This podcast is a perfect reprieve from a lot of the super technical stuff that can alienate and fly over my head at times. You guys have great chemistry. I enjoyed this! 😁

Oct 3rd


7:00 "Why are you so freaking quiet all the time?!"..."YOU'RE JUST SO SHY!" Thanks for the belly laugh.

Jan 9th


Code Decathlon (regarding sport with high scores)

Jan 3rd


7:05 "It sounds like you're doing production-quality work already" I nearly drove off the road I laughed so hard!

Sep 2nd



Mar 22nd


"Screw you and then eat some Tide pods." LOL

Oct 28th

Rj Douglas

Love it <3

May 5th


please don't laugh into the microphone. 🙁

Jan 28th

Sonny Darvishzadeh

obnoxiously loud giggles.. urghh

Oct 11th

Sonny Darvishzadeh

those laughter and giggles man.. you need a better post production

Sep 17th

Aaron Deadman

Highly recommended, the hosts have a great dynamic and there is a lot of warmth and humour as well as wisdom in these weekly shows. Worth a listen on the way to the office!

Feb 4th

Kirill Krasheninnikov

This is a unique podcast, very interesting and fun

Dec 24th

Marko Amott Dimebag

It is not is amazing! I tend to smile on the road when listening

Dec 10th

Raghuram Karra

It actually a good Podcast

May 4th