Soft Skills Engineering

Soft Skills Engineering

By Jamison Dance and Dave SmithBusinessTechnology
Download on the App Store

Soft Skills Engineering episodes

  • Episode 398: Tech lead for contractors and how to detach my ego from my work

    In this episode, Dave and Jamison answer these questions:

    1. 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?

    2. 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?

      29 min
    3. Episode 397: Skunkworks and too much work/life balance

      In this episode, Dave and Jamison answer these questions:

      1. 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.

      2. 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?

        26 min
      3. Episode 396: Enthusiastic scope creep and human search engine

        In this episode, Dave and Jamison answer these questions:

        1. 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?

        2. 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.

          36 min
        3. Episode 395: Super star teammate and Getting better with no financial incentives

          In this episode, Dave and Jamison answer these questions:

          1. 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”?

          2. 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?

            32 min
          3. Episode 394: Scrum master, weapons master and minimum tenure to not look bad

            In this episode, Dave and Jamison answer these questions:

            1. 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.

            2. 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?

              30 min
            3. Episode 393: Soft skills for interns and intern to QA

              In this episode, Dave and Jamison answer these questions:

              1. NK:

                Hi, I am starting a SWE internship at big tech company in a few weeks. Given the current state of the market, getting a return offer has gotten harder. I have a few software internships under my belt at this point but I am looking to excel in this internship. My goal is to get a full time offer with high pay from this internship. What are the soft skills that are specifically important for interns? This is probably applicable to junior engineers as well.

              2. Hello Soft Skills, I’m a junior engineer who transitioned from an intern to a full-time role at my company a year ago. I anticipated training in development, but I’m stuck in a low-value automated QA role without proper leadership or team integration. My efforts to improve processes and change teams haven’t been successful, and I’m concerned about being pigeonholed early in my career. I need advice on how to initiate change with limited authority and create a competitive job application despite my limited traditional development experience.

                28 min
              3. Episode 392: Old code and choosing my annual reviewers

                In this episode, Dave and Jamison answer these questions:

                1. We are a team of under 10 people who provide technical services to other departments of our organization. We use a tool that is built by my boss to supplement our work but it is crucial for the team to do actual work. The boss maintains it all by themselves and nobody is familiar with its code.

                  The boss is going to retire in a year or two, nobody wants to learn the code of that tool and the team can’t do much without the boss as we are more or less just individual contributors writing standalone code and delivering it to other teams who asked for it. Only the boss attends the leadership meetings and the developers are completely unaware of the remaining processes that happen in the background, i.e., communicating with other departments to bring in work, and all that business stuff. I am afraid the team would break apart once the boss retires because nobody knows anything on how our team operates beyond within team level except for the boss. Shall I just plan for the job switch?

                2. It’s annual review season! When choosing reviewers, do I a) choose the reviewers that will make me look the best or 2) choose the reviewers who might actually give me actionable feedback?

                  If it helps, I am on very good terms with my boss and his boss, as well as most of the C-Suite, and there is no way that I get either a promotion or fired in this review cycle. I have been a top performer in previous review cycles, but I expect that I won’t be reviewed so highly this time around.

                  27 min
                3. Episode 391: Post-staff and direct or a jerk

                  In this episode, Dave and Jamison answer these questions:

                  1. Hey guys! I’m a young engineer in a specialized area of infrastructure. I’m pretty good at what I do, and I’ve been through some leadership development programs, so I’ve advanced to a “Staff” role quickly, just based on observing the age of my peers.

                    Tech titles are completely mysterious to me, so I’m wondering - how much “up” is there from where I am? What’s the top of the IC ladder? Do ICs ever become executives? The idea of being a manager and sitting in 1:1s for hours sounds awful to me, so I’m not excited about that side, but I’ve heard, allegedly, that there is room on the IC side for promotion as well.

                    I’m a goal setter, and I kinda feel like I’ve hit a ceiling, so I don’t know where to set my target anymore. I don’t even know that I care about titles that much, but I very much like the pay raises that accompany them.

                    Thanks!

                  2. Johnny Droptbales:

                    How do I tell if my manager is a direct communicator or a jerk? Should I trust my gut on this (he’s a jerk)?

                    I’ve been working with my manager for a year now. He’s fairly fluent in English, educated, and keeps up with broad knowledge of our team/domain. He often connects different aspects of our work to discover discrepancies, bugs, and interesting ideas.

                    I’m trying to wrap my head around his communication style. Here are a few examples that stand out:

                    1. I refused to take on a new small project because I was concerned about meeting the deadline on my high-priority solo project. He gave me feedback that I missed an opportunity to demonstrate context-switching skills, which would look good for a promotion. I responded with my own reasoning, but he wasn’t interested and just moved on to the next topic.
                    2. He insisted on a new weekly requirement for our on-call pager rotation, which is to come up with one idea to improve the experience. When I asked why asking for help on a problem wouldn’t be enough, he answered that he expected his engineers to have been hired for their critical thinking and leadership skills, and they should be able to demonstrate those.
                    3. Recently he’s been leading weekly meetings to improve the on-call experience. He tends to ask very direct questions – we’ll look at a bug ticket, and he asks, “What is the root cause?” “Why do we do this?” “What are your ideas to solve this?” When pressed, he insisted this was a brainstorming sort of conversation, as opposed to a Q&A.
                    4. 39 min
                    5. Episode 390: Fixing typos and Cassandra

                      In this episode, Dave and Jamison answer these questions:

                      1. I’m a backend engineer at a large non-public company. I noticed a bunch of our emails and website riddled with typos. I can not claim that it is metrics impacting or impacting business, so I get that teams always deprioritize, but the overall feel just irks me. Many of these come from a CMS I don’t have access too, so it’s not like I could offer to help with code even if I wanted. When things like this are not in your space, any advice on how to up overall quality?

                      2. Possibly Mute Senior Engineer asks,

                        I’m currently a senior engineer in a really small startup, and I’ve been here just long enough that I’m deeply familiar with our flagship product in multiple areas - infrastructure, the guts of the business logic, our deployment patterns, our most common failure modes, etc. Unfortunately, I have to be involved in every project and pick the application up off the ground when it dies. As a result, I’ve become spread very thin, and I have to cut corners just to stay afloat (or I am specifically directed to cut corners to meet a deadline). Frequently (because of all the corner cutting), we run into two situations that really tick me off:

                        • I see bad thing on the horizon, talk to my team about it, am ignored, then bad thing happens and I get to have a crappy day fixing it
                        • I recommend a basic best practice, we don’t use it and do some coat hanger + duct tape thing instead, thing breaks, and I get to have a crappy day fixing it.
                        • I’m very tired of being on the wrong end of the consequences of our own actions. I pour so much into this job, but I feel like I need to go get my vocal cords inspected, because it’s like my teammates and my manager can’t hear me when I talk about the things we’re doing poorly that lead to bad outcomes.

                          Quit my job? Or is there an easy way to deal with this situation that I’m just missing? I feel like I’m screaming into the void every time I have these discussions and get completely blown off with “oh that’s not important right now” or “oh that terrible thing could never happen”. Thanks in advance!

                          33 min
                        • Episode 389: Sleepy and bureaucracy

                          In this episode, Dave and Jamison answer these questions:

                          1. The Sleepy Engineer says,

                            Hey SSE, how do you deal with drowsiness? I notice that sometimes when I am very tired at my desk and end up eyes closed head drooped down as I work which I imagine is a bad look for anyone passing by. During this time, I would either get coffee or stand up and walk somewhere which is a temporary fix but ultimately I am still very tired. I know in very few really big company HQs there might be a sleeping quarters if you plan to stay the night but my company is certainly ain’t one of them. Any advice on how to get through the day?

                            Thanks for the great show.

                          2. After seeing a hyper growth in 2021-2022, our company has become a bureaucratic hell hole. RFCs, PRDs, ADRs, reports. My manager (director of engineering) would request these documents but never read them. When someone doesn’t like the solution proposed, they have the option to say no and the project is blocked. But nobody (including the manager of the team) have the autonomy to say yes and move forward. How do you deal with this? Or is it time to give up and listened to the patented advice to quit my job?

                            Show Notes
                            • https://www.youtube.com/watch?v=f84n5oFoZBc - hammock-driven-development
                            • 43 min

                            About Soft Skills Engineering

                            From the publisher's feed

                            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…

                            More shows like Soft Skills Engineering

                            Software Engineering Radio - the podcast for professional software developers by team@se-radio.net (SE-Radio Team)

                            Software Engineering Radio - the podcast for professional software developers

                            273 Listeners

                            Hanselminutes with Scott Hanselman by Scott Hanselman

                            Hanselminutes with Scott Hanselman

                            381 Listeners

                            The Changelog: Software Development, Open Source by Changelog Media

                            The Changelog: Software Development, Open Source

                            290 Listeners

                            Software Engineering Daily by Software Engineering Daily

                            Software Engineering Daily

                            625 Listeners

                            Talk Python To Me by Michael Kennedy

                            Talk Python To Me

                            582 Listeners

                            Thoughtworks Technology Podcast by Thoughtworks

                            Thoughtworks Technology Podcast

                            45 Listeners

                            Syntax - Tasty Web Development Treats by Wes Bos & Scott Tolinski - Full Stack JavaScript Web Developers

                            Syntax - Tasty Web Development Treats

                            987 Listeners

                            REWORK by 37signals

                            REWORK

                            212 Listeners

                            CoRecursive: Coding Stories by Adam Gordon Bell - Software Developer

                            CoRecursive: Coding Stories

                            188 Listeners

                            Practical AI by Daniel Whitenack and Chris Benson

                            Practical AI

                            205 Listeners

                            AWS Podcast by Amazon Web Services

                            AWS Podcast

                            202 Listeners

                            .NET Rocks! by Carl Franklin and Richard Campbell

                            .NET Rocks!

                            242 Listeners

                            The Stack Overflow Podcast by The Stack Overflow Podcast

                            The Stack Overflow Podcast

                            62 Listeners

                            The Real Python Podcast by Real Python

                            The Real Python Podcast

                            139 Listeners

                            Oxide and Friends by Oxide Computer Company

                            Oxide and Friends

                            66 Listeners