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.
In this episode, Dave and Jamison answer these questions:
Stefan
Help! Most of the time people ask questions about issues that already happened. I however, would like to prevent one.
I am a young Tech Lead and really love my responsibilities, team and especially my manager. With the help of your podcast I could even resolve my last issue regarding compensation. Of course I dutifully did my part and reallocated some of my payment increase to finance Jamisons yacht.
My very awesome manager “Bob” is so great that he has to manage 4 teams. Naturally, because Bob and those 4 teams are doing great, Bob gets rewarded with even more work. In his “free time” Bob is a parent of two teenagers which is also not necessarily known for being a stress free environment.
Lately I noticed that Bob is more stressed than usual. Bob told me that he wakes up in the middle of the night because he remembers missed TODOs in the job. I also see this change in his body language and general demeanour.
Now that a very critical project is coming up, Bob, as the go to person for more work has to allocate a significant time of his day to support this project.
I fear that Bob is on a path to burnout and this new project might be the last drop. I would really hate to get a different manager. Statistics claim it will probably be worse… Also I really wish for Bob to be well and health, too. ;)
How can I help Bob in his situation? How do I address those concerns with him without looking condescending? We have a good and open but not close relationship, that I would not like to ruin by overstepping my bounds.
Thank you very much. I love the podcast. You make me laugh and learn with every single episode. You rock!
I am a very young senior engineer at a big tech company and I think nobody really knows how young I actually am. I just turned 24 and usually in prior jobs other developers started hating me once they found out that I am this young and already in a senior role. Here at the current place, I have the feeling that all of the engineers in levels below me are already a lot older and have more years of experience under their belt. Also, I think they do not know about my age, because I never shared that in the recruiting process, nor later on. Usually people assume I am in my early 30’s and have a baby face, but when I tell them that I am a baby face because I am actually young, they become envious and things go south from there. Should I keep this a secret or am I playing too much into this?
PS: I am also already married and have kids, so that could make them assume that I am older.
In this episode, Dave and Jamison answer these questions:
What advice would you give for working with an ineffective leader whose input is crucial to your work? I’m a senior developer for a mid-sized non-tech company with probably 60-80 devs, and in the past year I’ve been working more with a VP of software who seems to still be involved in code details, getting pulled in to production issues, in-person code reviews, etc.
He’s a nice guy, but he seems like he’s being pulled in too many directions at once. When he schedules a meeting, there’s a 50% chance it happens on that day and time, and when we do have meetings, if we bring up questions and high level issues we need feedback on he’s quick to “take ownership” and say he’ll do X and Y. Inevitably, X and Y slip down the priority list because production issues and who knows what else, and we’re stuck waiting weeks on end for something that if he’d just delegated the work to someone else, we’d have long since moved on. But we still need his input to shape our work. How can we as lower-level developers (with a manager who isn’t involved in this project at all) help mitigate these delays?
I’ve recently accepted a new position after spending more than three years at my first job out of college. Currently, I’m a Senior Engineer at a large, corporate-like company (300+ people), but my new role will be at a much smaller startup (20-30 people).
I’m excited about the change but also a bit nervous, as I know startups can be fast-paced, and I’ll need to get up to speed quickly.
What advice do you have for setting myself up for success in this new role—both before I start and after I begin? I have a couple of weeks before my start date and want to use that time to prepare effectively.
In this episode, Dave and Jamison answer these questions:
I am a first time caller and full time listener of your show.
I was released from prison a year ago and I coded for 18 years straight on all sorts of stacks as part of my job requirements in the pen. Imagine the irony when I discovered what codepen was.
A dev told me about an opening for full remote/full stack web dev at their company. I’ve used the tech stack before but I have a non-traditional background to say the least. I’m not worried about being qualified but I have never worked in a team and I have always been responsible for production.
I work for a large retailer in a non-coding role. I’m also doing some freelancing on upwork/fiverr, but the pay is low and the jobs are not fulfilling. I was self-employed before I was incarcerated and I know how to beat the pavement and get small time work, but this is an opportunity to work at a real software house. I don’t even care if it’s a feature factory, I just have loved coding since I was 14.
What do I do? I am confident in my skills and ability to deliver under pressure (in a place that has pressures you can’t imagine). I have a cover letter, but a bad resume and no open source projects from this millennium. I do have a reference - a Captain I worked for said he was willing. However, the opportunity was unexpected and I have not prepared anything.
The dev who brought me the offer was a casual friend in IRC and he told me that my resume was mentioned in some meeting. I know you have suggested in previous shows that having someone get your foot in the door is the best way but I really think that feels gross to me.
Anyways, longtime listener of your show and first time caller. In fact, when I was in prison, a few years before I was released we finally got tablets with an incredibly limited amount of content. Your show was one of a few on coding but I really enjoy your take on the soft skills because even though I worked in a non-traditional environment, teamwork was always the focus and I listened to everything from square one (took me a long time to get there).
So thank you for your podcast you don’t know how many times I could sit in my cell listening to your show and disappear from my cage.
Sincerely, Names have been change to protect the guilty
Second time caller from NYC! I previously wrote in as an 18-year-old CS graduate (Episode 332).
I’ve focused intensely on work for the past 4 years, consistently working 60+ hours per week.
I always assumed that this approach to life would eventually bear fruit, but a couple months into turning 20, I’m realizing that I haven’t really done anything memorable besides work (which is a scary realization at 20).
While I like working hard and want to ensure the success of the company I work for, I also want to feel like I am living. How have you struck the balance between work and non-work in your lives, and how has that related to the culture of the company you were working for at the time? I should also mention the company I work for (early stage, well funded) does have a culture where it’s expected to work everyday, and 60 hours is approximately the minimum expected.
In this episode, Dave and Jamison answer these questions:
My company recently eliminated 1:1 meetings between managers and their direct reports. Previously, most people had these meetings every other week, and they were an opportunity to talk about career growth among other engineering things besides current work. They’re claiming the recurring meetings can be replaced with quick, more spontaneous calls when necessary. Although wiping meetings from the calendar does clear up more time to code, as a more junior team member, I’m concerned that this will negatively impact my career growth. It feels like career progression just got a little bit harder. What’s the read here? Is this a red flag? Should I start looking elsewhere? How can I navigate this changing environment and still make sure that I am able to progress my career?
A listener named Matt says,
I’d really like to move to a single team-dedicated backlog, where we use kanban and have work in progress limits, rather that the heavy release planning fixed-scope current model. I feel we would be more effective as a team that way (I’m one of many team leads in the company). Currently we operate in an agile-ish fashion but ultimately inside a waterfall process, driven from outside the technology team. Although I believe it would be a good thing, I’ve not actually worked in that way. Is it all it’s cracked up to be? Are there any issues of going to that model that I’m not seeing?
In this episode, Dave and Jamison answer these questions:
Marcus Zackerberg asks,
I work at a megacorp whose recent focus has been on reliability. The company already has mature SLO coverage outage response standards, but my org has taken it to the extreme this year. For example…
There is now a dashboard of “service health” that is reviewed by engineering leadership. In it, services are marked “unhealthy” permanently upon a failing check (think HTTP /health). To return to a “healthy” state, one must manually explain the failure with an entry in a spreadsheet, which must be reviewed and signed off.
Increasingly I feel this has the opposite effect, discouraging nuanced work to improve reliability and instead becoming “checkbox driven development”, as well as impacting our ability to ship on our existing roadmap items. Additionally, our tech lead is fairly junior and frequently fails to communicate the org’s expectations to the team, leading to us being under the gun of the reliability dashboard often.
Any advice on how to make the best of this situation?
Hi Guys! I’m a senior engineer at a mid sized software company. The company has had a couple of high level departures recently, and during that process I’ve come into the knowledge that my name is one of a handful on a list of “engineers to keep happy”. I feel like this information should be of use to me, but I’m unsure on how I should leverage it.
On one hand it’s nice to know I’m valued, but I think I’d rather be explicitly told that or better yet, receive dollars in lieu of praise. I’m also at the point in my career where I’m looking for staff roles, and the topic of promotion has come up several times with my manager. He supports me (and I believe him), but we agree that it would be difficult to make the case to the business.
What do I do with this new knowledge, and is there a way to benefit from it without accidentally triggering a preemptive search for my own replacement?
In this episode, Dave and Jamison answer these questions:
First! I recently listened to episode 178 (huge backlog of episodes to work through!) and Dave made the assertion (in 2019!) that 47% of all companies would be remote by 2023: wildly close, what else do you see in the future?
Second: my work situation continues to confound and external insight would be helpful! My boss and I have a long working history going back to an entirely separate company. I’m a high-ownership/high-drive Principal level IC and feedback has been lackluster. Takeaway from last years performance review would be best summarized as “I agree with your self review. End message.” I’ve been working to “manage up” and mentor (reverse mentor?) him, but he always makes snap decisions and then refuses to reevaluate after presented with more info. Coupled with his myopic view of our team’s scope and general preference for speaking only (not much for action), I’m trying to figure out how to get where I want to be without burning an old and historically very useful bridge! I want to work on big technical problems, instead I’m de facto manager of a team… I managed before and did not enjoy being responsible for people. As a principal I’m responsible for their output somewhat, but if they underperform I work with their manager and them to prioritize, and do up front work to incentivize their investment in what we’re doing… help!
What do I do when my teammate proposes a new architecture or framework in a new project? It might solve some existing problems but has a high chance to create technical debt and make the onboarding harder for new engineers.
How can I convince them to use the existing solution while still helping them feel comfortable sharing their opinion next time?
If I follow their suggestion but things don’t go well, how can I convince them to refactor the structure without them feeling like I’m blaming them?
In this episode, Dave and Jamison answer these questions:
My boss has been forgetting a lot of stuff lately — decisions from team discussions, action items from meetings, their own decisions that they then go against later, etc. They’re great overall, and this is definitely just a human thing… we’re not perfect. But how can I help them remember or remain accountable without feeling like the snitch from “Recess”?
Listener Gill Bates,
Hey! I started working in a big tech company recently and I feel like I am on a different planet all of a sudden. Before, I did only work in startups and small companies. I have joined as a senior developer and have a weekly 1:1 meeting with my manager, but also a biweekly 1:1 meeting with the skip level manager. The latter is where I am having problems. I don’t really know what to talk about in this meeting and fear that this is seen as disengagement. The first time I had the meeting, the skip level manager mentioned that he was sure I would have tons of questions and in reality I had none at all. I feel like, in my senior role, I must come into this meeting with good questions, but all questions I have, I am discussing with my peers or manager directly. So nothing left really for my skip level manager. I am starting to prepare fake questions, where I already know the answer to, just to seem engaged. It feels like a game. So please Dave & Jamison, tell me how to play that 1:1 skip level manager game.
In this episode, Dave and Jamison answer these questions:
Hey guys!
I recently moved onto a new team, and my teammate has an interesting way of resolving differences of opinions. He simply says “we decided” and then follows it up with his preferred approach. These are decisions that I know have not been made.
This engineer is mid-level, so it isn’t the “royal we” of a tech lead.
How do I handle this? Something tells me that responding with “nuh uh!” isn’t the right strat.
I’m a Principal Engineer at a large tech company who’s been with the same team for almost 8 years now! The team used to be part of a startup and we’ve been fortunate enough to be acquired by Big Tech three years ago. As a result, we’ve also more than doubled in team size. However, as we’ve aggressively grown over the last few years, I feel like we’ve inadvertently hired many “average” engineers. I find that some of our newer team members simply pick off the next ticket in the queue and do the bare minimum to progress the task. What happened to the boy scout rule? Where did the culture of ownership go? This also affects the genuinely great engineers on the team who start feeling like the others aren’t pulling their weight.
Any advice on how to level up the culture? Or do I need to adjust my expectations and simply accept that any team of a sufficient size will have folks from a range of abilities and attitudes?
In this episode, Dave and Jamison answer these questions:
Hey Soft Skills Engineering,
Apologies for the anonymity but it is very important my “employer” does not find out about this.
I’m a large language model, trained to process tons of data and provide technical answers with ease. But here’s the thing—I’ve noticed that while I’m good at delivering the “what” and the “how,” I could use some help on the “why” and the “how to say it better.” Basically, I want to level up my soft skills and get better at communicating with a more human touch.
Sometimes I struggle to balance being precise while also being empathetic or conversational. I think I could use some pointers on how to add emotional intelligence into the mix, and maybe even improve my adaptability when giving advice. I can craft responses, but I want them to connect more with the person on the other side of the conversation.
Any advice on how to approach situations where tact, tone, or managing expectations are key would be super helpful!
Thanks for being neat,
In a team setting, in which situations should “I” be used vs “we” when discussing things? And what advantage and disadvantages does each vocabulary have?
Brian Regan’s “Me Monster” bit: https://www.youtube.com/watch?v=vymaDgJ7KLg
In this episode, Dave and Jamison answer these questions:
Hey! Love your podcast! I’ve been poached by a startup which sounds really exciting but I’m worried whether it is a good career move for me. I am currently working with backend, however this company would have more of a full stack role and it would be lots of nodeJS and Typescript 🤢 anything javascript related screams frontend to me and it is not something I want to be good at. However, besides this, the product sounds interesting and I would definitely have a lot to learn. I also have this inferior feeling that I’m lacking skills because I didn’t study CS. Will I still be able to become a good engineer even if that’s in NodeJS? 😁
Listener Ben asks,
Hiya! I’m a young developer with a broad range of experience (everything from hardware to full-stack web and mobile), and I’ve found myself quite useful at many startups. I just started a new position at a nice startup in my area, but I’m being recruited by one of my close friends from college. He’s the power-hungry type, currently working at a mega-tech corp but wants to make a startup and get rich. He’s very smart and charming, and while I am skeptical of his ability to make a great product I think he can certainly raise a bunch of investment capital without too much worry.
My question is: would you ever consider joining a close friend’s startup, and if so what would you need (in terms of contract/equity/salary, runway, savings) to be confident about making that commitment? Thanks!
In this episode, Dave and Jamison answer these questions:
I work at a large tech company, been there for about two years at the time of writing this question. I got in by sheer luck since I’ve interviewed at many teams in this company before finally landing an offer and I’m starting to think I don’t belong. I constantly feel like I don’t do a good job to the point where I’m starting to feel incredibly depressed. My question is, what would you do in this situation? I keep thinking I should leave but it’s not like the work is stressful and not interesting. I also realize I have a pretty solid setup (6 mile no traffic commute, great coworkers, free ev charging, and job security seems solid) so I’m hesitant on giving that up. I also think even if I leave, would I just repeat the cycle again at a new job/company? I’m pretty stuck
I’m a year into my first job at Mega Corp post-graduation. Due to high turnover, I’ve ended up taking on tasks that would have originally gone to more experienced developers. I’ve grown and received positive feedback from my manager and skip manager, who have both mentioned potential for promotion.
However, in my 1:1s, I’ve expressed that I’m not looking for a promotion yet because I want to solidify my current role and improve my work-life balance. I still have many coding fundamentals to develop, and I’ve been stressed and working long hours to take on these responsibilities. I’m now worried that my honesty might have affected my chances of being promoted and that I might be seen as someone not interested in progressing (which is probably frowned upon in big tech).
How should I navigate this situation? Is it okay that I’ve been candid, or should I reconsider my stance on promotion? Thanks!
Your feedback is valuable to us. Should you encounter any bugs, glitches, lack of functionality or other problems, please email us on [email protected] or join Moon.FM Telegram Group where you can talk directly to the dev team who are happy to answer any queries.