Interpersonal communication is an important skill to have as a software engineer. As a software engineer, you work with a team of other software engineers to build a product or scale a system. In order to work effectively with the other members of your team, you need to be able to communicate with them so you are all aligned on the same end result.
Context: Working in a small startup where there are a very small number of wiser senior engineers
Everyone in the development team contributes to code reviews
Often I’m unsure about the quality of the feedback and when to act upon it
Sometimes people even change their mind after you have acted on that feedback which is frustrating and can contribute to the delay of finishing a task
Does this also happen in big tech? How do you handle these situations ?
We are 3 people in my team. I've been at the company for 2 years roughly and my team mates for 15+ years. I'm in a situation where my coworkers do stuff, but stuff that's often completely unrelated to our backlog. One of them struggles with being motivated by the job. Occasionally, a 16-hour job takes a month to complete. Maybe 2. And you never know why or when it will be done. This causes a lot of tension with the product lead. The other teammate (focused on the front end) rarely makes any PRs. I'm not sure if it's due to the fact that they have mostly done HTML/CSS and are unsure of how to navigate the frameworks we use or what it is. Our manager tends to cover for us, but obviously he's not loving this situation. It's been like this for 1–2 years. Now it has started affecting my pay raise, and I'm starting to feel tired of always playing dumb or referring to the other great work that they're doing when asked what my teammates are up to. Both seem to be struggling somewhat with stress and anxiety, so I've tried to be compassionate with them. But what do I do? I want to take ownership of the team's performance, but it's difficult to know what to do. They have the senior roles, and they have most of the ownership of the project, so I also feel weird telling them "what to do," if that makes any sense. The company size is roughly 20 engineers, FYI.
Any advice on how to handle this situation nicely, i.e. making sure we're still friends afterward, would be highly appreciated.
I joined a company 6 months back and from start I am noticing that some of the engineers in the team are constantly underperforming and I can hardly see them working on any task. This puts additional pressure on other teammates to perform as we set team sprint goals considering availability of all engineers and we find the team always lag behind the deadlines.
I am wondering what should be the right way to discuss this with my manager during 1:1’s. I don’t want to sound like I am pointing fingers on others.
Recently my company has split up a core team into two teams. One team is to keep on building the core infrastructure for the product and the other team is supposed to be working in an advisory position with other web applications teams that depend on the core infrastructure. Without dwelling into more details, this core team builds, and maintains datastores, that other web applications consume. A big part of the job is to build google search type infra (on a much smaller scale of course) and data processing pipelines.
Now working with other teams is exciting. But just focusing on one task that is doing tickets/changes/investigations that help them implement some specific features w.r.t to core infra, is kinda troubling me. As it puts me in a passive position and does not clearly define metrics for success. It also puts me on the borderline as I am neither doing core infrastructure-related work nor I am completely part of the other team. The idea is to imitate how Staff engineers work across teams. But I am a Senior engineer (just recently promoted).
Though this is clearly a growth opportunity for me, I am a bit worried about falling behind and not meeting expectations. Any advice on working with cross-functional teams?
I am working on my P0 goals for this half however, the XFN is not communicating well. I am done with my changes and blocked on them for days. They don't review code as fast as I need and keep me waiting. How should I approach them? Also, I want to build good relationship with them for a good Performance cycle feedback. I think they don't take me seriously. what is the right approach here?
I work as an E4/L4 equivalent Software Engineer at a fairly big tech company (5k+ employees).
My org's Senior Director is interested in helping engineers in his team develop good soft skills which align with one's career aspirations.
I have my 1st recurring 1:1 with him soon where we'll be brainstorming over which skills I can work on one by one. I want to go in this meeting with some ideas.
Personally, at this stage of my career, I haven't thought about whether I would like to stay in IC role or get into management some years down the line. So for now, I want to work on the soft skills which would generically provide best returns in future in the tech industry.
The ones which come to my mind are -
- Presentation Skills
- Leadership Skills
- Conducting meetings well with a large audience
- Decision Making
Can you please share the right skills to work on from your side ?
Also any pointers on action items I can take for each skill you recommend (or for above mentioned skills) will be of great help too. Thanks.
I have had issues with some of my teammates where code or docs don't get reviewed early and a ton of feedback is left the day before the deadline. This is after sending multiple reminders almost everyday leading up to the deadline and I don't like escalating because it feels like I am snitching on them. I do give reminders in our weekly standup and our common channel.
I got tired of this happening and setup a code bot to send reminders to everyone in the code channel and have considered sending out email reminders (nobody else really does this) or booking a meeting in advance before I even start coding. I tried a concept similar to RFC but I still don't get feedback in time. I get it people are busy but they just completely ignore me, I don't even get a slack sometimes saying they are busy.
I am an SDE 1 if that helps
I am an Entry level Software Engineer( SWE 1) in my current team for a year now in a mid sized company. I have a matured tenure( 3 years ) SWE 2 in team who has been wanting to get promoted to a Senior Software Engineer for sometime now.
The situation is, in order for a chance for promotion, this SWE 2 was asked to lead a small feature implementation of 2 people where they ended up missing deadlines twice stating engineering complexity. Due to this situation, whole of the team, including Teach lead and SWE1s have swarmed in to help them meet the deadline which is almost a week from now.
The thing is, this particular SWE 2 has been calling me out in Standup and grooming meeting and in person to EM for not completing my story in time even though I am giving proper updates in standup and Tech lead hasn’t raised any concerns yet. According to this SWE2, the stories I have been working on should be completed in a particular x timeframe because he thinks so. They have not laid out any scope or plan where to make changes for it. Their argument is, unless I complete this task, the whole team is blocked because of me. They made it a point to convey it to EM along with PM. EM reached out to me in frustration and seemed content after I explained him the complexity and was able to deliver it next day morning. I had reached out to other senior engineers on team and they guided me properly to finish this task.
This particular SWE2 again called out my name again in my Tech Leads one of the PR and mentioned that other devs are blocked because of me. Tech lead gave a great suggestion to unblock others ( which he could have asked way earlier and implemented ) and others are unblocked now. When I reached out to this SWE2 asking an estimate for current story, in our 1:1 conversation he mentions go with your speed. We don’t really need your part to be unblocked. It will be a good to have. But he keeps on throwing me under the bus infront of team, EM and PM. This SWE2 lacks technical depth and keeps on checking with me everyday if I need any help. But they can’t explain anything properly and I consider it as a waste of time to even decipher their explanation because it tends to increase my confusion.
If it matters, we have our end year review next week and EM seems to think SWE2 is the one helping me (in fact not at all, can’t even explain a proper code change). This SWE 2 is one of the main reason I was given not meet expectations last time in our mid year review rating. I am scared of how much impact he has because of EM’s calling out, again on my review this year when in fact I have hardly worked with him this year. Please advise how to handle this situation.
Finding a solution is one thing but you don’t understand it unless you can communicate it and others can understand it too
This becomes specially important when you are blocked and adds an extra layer of complexity when finding a solution can already be a challenge
What good practises can one apply to get better at this?
I'm an E5 at a Big Tech company. My team's working on a very ambiguous project. 3 opinionated, vocal engineers (2 E6, 1 E5) tend to sidetrack our brainstorming discussions by playing devil's advocate to shoot down ideas. How do I drive these meetings forward with this dynamic? We often rehash the same discussions over and over. When we're close to reaching a decision, oftentimes someone would throw a wrench into things. Moreover, some engineers require upfront planning and want to finalize all the details before committing, while others prefer to defer the details to future milestones. Both my manager and team are getting frustrated, but are unsure how to fix this.
Data engineer here. Manager is the leading a project which is severely mismanaged and he just demands results. He doesn't plan at all. There is no proper project planning and it is XFN project. If I do project management tasks it saps my energy due to numerous meetings in order to do that. Project has been going on for 8 months. Everyone working knows it is not going anywhere. Just that manager wants us to keep working on it. Even our org doesn't recognize it as a critical project. Problem is continuing to work on it takes time away from other interesting work which has more impact.
What do you suggest? How do you suggest I approach this?
I'm an E5 iOS at a Big Tech company. Our team's E6 backend and E6 iOS tend to dominate our team discussions, often talking over each other. I get the impression that the E6 iOS wants to be the smartest person in the room and enjoys micromanaging all the details, but the E6 backend enjoys challenging him. When I proposed a solution to one of our project's challenges, the E6 iOS quickly shot it down but could not propose any alternatives. The E6 backend challenged the E6 iOS to explain why my idea wouldn't work, but the E6 iOS just talked in circles. It seemed like the E6 iOS just didn't like it because he didn't come up with it himself. How do I avoid making the E6 iOS feeling threatened? I'm a bit hesitant to contribute to team discussions due to this dynamic, but my EM wants me to contribute more.
Master your interpersonal communication skills to build empathy and long lasting relationships with your teammates that extend beyond your current role. When you prioritize interpersonal communication, you can ensure that your projects are successfully completed on time.