There's more to working in tech than just shipping software. It's vital for your career to build deep professional relationships and make real friends at work, especially if you're looking to grow to senior levels.
I am getting overwhelmed with my work, in this team for about 1 year. How should I optimize to squeeze time to help others?
Helping others gives me more joy than doing my own work :) . that is not my core work though.
I’m an E5 iOS engineer at a Big Tech company. An E5 Android engineer (let’s call him A) on my team is very direct & blunt in his communication style. If he doesn’t like something, he’ll definitely let you know. An E5 backend engineer (let’s call him B) on my team is the complete opposite in his communication style. A and I collaborated on an official spec that we shared with our entire team to align everyone. B deviated from this spec in his RFC, but had tagged A and me on his proposed name change in the sample json response in his backend RFC.
A called B “sloppy” for embedding the source of truth in the backend RFC’s sample json response instead of using the official spec as the source of truth. This offended B, who viewed it as “finger pointing”. From B’s perspective, it was an innocent misunderstanding that’s easily resolved since it’s so early in the project that not much code has been written. It’s a single string that can be easily changed on both the mobile and backend sides. B thinks that A is making a mountain out of a molehill.
I worked closely with B last quarter and really enjoyed it. He’s extremely kind, easy-going, encouraging, and puts you at ease. If you make a mistake, he would never call it out explicitly. A seems to be the complete opposite of all those things, but I haven’t worked much with A yet.
Both A and B vented to me privately for support. A thinks that B is “sloppy” for burying the changes in the backend RFC instead of updating the official spec. B thinks that A is “difficult to work with” and “points fingers” over something that can be easily resolved. We’re still in the early stages of this project, and B doesn’t know how he can work with A if A keeps finger pointing.
When I suggested that A sugarcoat the “sloppy” comment, A told me that’s already the sugarcoated version.
B’s planning to escalate this to our EM, since he suspects that A will as well, so he needs to “defend himself”. Any advice on how I can improve the situation? Sadly, I feel that most engineers at this company use A's "direct" approach. I personally get along fine with both of these individuals (so far, at least), so they both confided in me. I think that A is “right” that the source of truth should be in the official document, but the manner that he communicated it could have been improved (not that I’m an expert at this skill either!). Are there concrete actions that I can coach A on to make him a better teammate to work with? When another teammate (E6) previously berated B in front of the entire team, I escalated it to my EM on B's behalf and my EM had intervened. Should I just escalate this to my EM as well? There are some strong personalities on this team that are going to make this project challenging. Sigh.
I am consistently impressed by the professionalism and compassion demonstrated by the founders and contributors of Taro. Consequently, I find this forum to be the ideal place to seek advice on this matter.
Occasionally, while collaborating with others, I get myself into a disagreement and becoming frustrated with my own behavior. Regardless of who is at fault, I would greatly appreciate any guidance on how to cultivate compassion and maintain professionalism in situations where personal or professional differences may cause tension. How can one effectively navigate such scenarios without allowing these differences to become an obstacle?
I've been struggling with onboarding at my new job.
I'm part of a new team; my only other teammate recently joined. Many related docs are not in English & the translation is weird & confusing often. This makes revamping up independently super hard for me. I try to find that concept in an English doc from any other team, and that's my way of understanding something. But it puts a lot of overhead because I basically now try to understand the work of a lot of related teams too. And often it is much more time for me.
My manager has a lot of people report to her. I had a 1-on-1, and I explained the situation. She asked me to ping her for help. I often have stupid questions, and I feel weird asking her directly. So I asked her to assign me an onboarding buddy from the related team. But from her reply, it seemed like I should talk to everyone on the team & figure it out. I think she wants me to be more independent.
Now I ping people in my team or close teams to ask for help. I have found most or nearly all people to be super-helpful, and they relate to being in the same situation once. But I feel guilty about asking people for help. I feel it doesn't do much for them. As with most, I don't have a team meeting where I could thank them & their/our manager would notice it.
How should I better navigate this situation?
I'm wondering about the dynamics (plusses and minuses) of having a personal mentor. Taro is fantastic in that it gives me access to the best software engineers to answer all the tech-related questions I can think of.
Still, I'm wondering if there are advantages to having a specific mentor, someone a few years senior to me who's in the position I want to be in. The idea would be that they could show me what to focus on to develop my career in a way that is more individualized. I write this as I've just been matched with Orbiit which I'm super excited about, but not sure if that's mentorship so much as peer-to-peer.
I got the mentorship idea from a company called SharpestMinds, which focuses on project-focused mentorship for career switchers for Data and SWE roles.
This question isn't about them, but the idea of personal mentorship more generally.
So to summarize, I have 3 questions:
We currently have a problem with test flakes happening very often.
Someone is currently working on a systemic fix, but in the meantime, I've taken it upon myself to be the leader in categorizing and assigning people to take on some of the existing flakes as they happen. I am assigning based on who has the most context or who wrote the original test.
My question is: How can I assign these in a way that doesn't cause people to dislike me? I ask as someone who needs to delegate in my role but also needs to get buy-in for various initiatives so its important that people like me.
A couple of things I've tried:
Any better wording of the "ask" or advice around this situation would be appreciated!
Whenever I talk to people (outside of my team) they call me humble but then also mention that I might be bragging by sharing my experiences. Even though I don't mean to. I feel like there's a perception improvement by not bragging but also still being able to talk about your accomplishments.
My experiences could be work related or outside of work like Travel, Adventures I've tried lately, etc
What are the things I could do to get most out of when attending multi day Conference's for example DriodCon.
Appreciate any thoughts about networking and bringing some learnings back. How to digest knowledge through the day usually its all theory heavy. What are the ways to relay and implement some learning in our projects or share with others in the team ?
My question is when should I reach out to help someone. If someone new joins, and if it is clear that task might be difficult for person, or there is some context needed etc, and they fail to ask, should you help them? Reaching out early and helping might be hampering their own learning, also at risk of hurting someone's ego. But If I am in other person's shoes, I would appreciate all help so what is right balance here?
Also, should you helping be more visible or private? If it is public, other people can add extra context as they like, but maybe in private conversations, person can ask more follow up question, assuming they are afraid to ask dumb questions. To be more specifically, by public I mean team channel in slack and private would one-one chat.
I just started working at a new company. I am still going over the general onboarding process for all employees.
How should I go about introducing myself to the team & manager? Should I ping them on chat to say Hi & asking them to add me to the meetings? My whole team has about 16 members.
Thanks in advance!
In a lot of companies I have worked, the engg management asks you to trust them blindly but expects you to earn their trust (especially if they are newer in team)
This is obviously not the case with all the management leaders. In some places I have seen leaders placing their trust on new people, in others trust is placed based on title of the people (doesnt matter if you are new or old)
but is it commonplace to have situations where trust is demanded blindly from you but you are asked to earn their trust. I thought trust is a 2 way street
But how have y'all seen trust play out in your situations.
I used to ask a question to filter out managers who would be like trust has to be earned. But in practice I have not seen that work
I'm an E5 at a Big Tech company. My EM's pushing me to lead projects on our team so I can work on getting to E6. This is challenging when the E6 on my team tries to micromanage everything. How do I lead when I keep getting overruled? The E6 usually makes good decisions, but oftentimes struggles to articulate his rationale / justification.
I was wondering how would one handle situations where a manager makes up a feedback based of half information (or their perception) or even misinformation from others.
There are also no actions attributed to this feedback.
for eg. Person X have to learn how to manage up or navigate office politics or learn how to work well with other. But how? And who are these others?
When asked an example of why this feedback was given, they don't have any good example of what happened ,who said what and why was the feedback not given in the first place.
I know this is not something I can control, and in their mind of course they are giving actionable feedback.
The other part of it when you are surprised by the feedback even after asking for it in every 1:1 before (in my situation my manager was out for most of the time).
It just feels that why did I even work so hard in the first place and a little demotivated.
I'm an E5 at a Big Tech company. There are several loud, opinionated, dominant personalities on my team. Some of them are E6. They often talk over each other as well as the rest of the team, so the rest of the team rarely contribute to discussions anymore. When a teammate (E5) presented his RFC to our team today, the dominant personalities started questioning his design decisions and talked over him when he tried to defend them. My teammate looked so discouraged and beaten down at the end of that meeting. When I brought this up to my EM in a 1:1, he said it's a people problem -- people are not being respectful. I asked my EM if he could coach those people, but he said he prefers to invest in people like me who are interested in learning & growing.
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 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'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.
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.
Everyone on my team is significantly more experienced than me. I feel a bit intimidated criticizing the decisions that engineers far more senior than me are making. How can I start contributing?
I started my career in a mid-level startup that was on the verge of IPO. I contributed a lot. Learnt a lot in terms of how to deliver big scale features relatively quickly, work within sharp deadlines, owning features and products. I was a high performer.
After 2 years of working in that company, I decided to switch to Big Tech for better compensation. While Snap is not exactly a Big Tech company, this is what I had in mind when switching.
I immediately started adding value in terms of delivering features and owning products. However, since I come from a mid-level startup, my soft skills are very weak. I am an excellent programmer, but I struggle writing Technical Design Docs. I deliver features quickly, but I don't know how to contribute to the spec sheets and writing launch emails, holding engineering sessions, efficiently using 1:1s. It feels like in my previous company, delivering features on time, writing quality code was enough to be a high performer, but seems like Big Tech requires a lot more. My manager's ex-Amazon, so he values tech docs a lot, and I feel like I am missing a huge opportunity here by not being good at them.
How do I adapt better to this work environment ?
In your experience, as you moved up the IC levels or through your experiences with others, how important do you think it is to be connected within your org to move up as a IC?
If so, how does one go about this and is there a way to quantify/measure this?
I am currently a software engineering intern in Google. My main goal is to get a return offer after I complete my internship.
Based on my conversation with my intern manager, the high level metrics for success as an intern are definitely technical problem solving, collaboration and feedback etc. This is highly aligned with Alex's videos on the Internship series, where he described that an intern's main performance metric is code volume. I have also learnt that finishing a project drastically increases one's chance for a grad offer based on interns who converted to FTE.
However, I noticed that there are a lot of opportunities for events and mentoring. My current strategy is to focus most of my time in the project while networking mainly in the team to make sure I have a great relationship with them. Occasionally, I meet another employee once a week or so. At the same time, I noticed that most interns are using most of their time to meet with other FTEs from all over the world and other teams.
I personally find that a large codebase with so many contexts and 12 weeks to be the main factors on why I am a bit more conscious of my own time.
Is my current strategy to focus on the project and networking mostly with my current team optimal for a return offer? If not, are there anything else that I should be focused on?
At my startup I was asked to deliver feature after feature + bug fixes by PMs as fast as possible without much time for proper refactoring work or engineering initiatives. Also it was pretty individualistic where you get assigned a task and only work with other engineers during a tech spec review meeting, code review, and syncing with a backend engineer (as an Android dev).
From Alex’s video on getting promoted to tech lead, I saw how you can 1) drive projects as an L5 engineer (vs a PM putting that together with designers) 2) Not have to know how to implement everything yourself for a project, but work with many others and facilitate the team. This sounds 100x more engineering driven and collaborative than at my start up with few developers. Is this common to many people’s experience of the norm in FAANG?
What I liked about Alex's story is also how he had the time and space to do things like document the differences between iOS and Android, as well as go all the way through to making a data analytics plan for monitoring it himself. Seems like a lot of freedom and ownership which I didn't feel I always had the time for personally. Being able to not have to spend 80% of your time coding but rather doing deep work thinking, planing, designing holistically sounds extremely satisfying and rewarding as an engineer. Maybe this also comes with experience at startups as well?
I recently joined an organization as a senior where I was made tech lead within 3 months of joining. This was somewhat related to recognition of my work among product and my peers.
I advocated for good engineering practices such as automated integration testing and established projects for cross org collaborations to help deliver whats important for the organization.
All of this was quickly realized as a super critical projects by the organization. I created tech specs and prototypes for these projects.
However recently the organization hired a principal engineer.
since he was new I volunteered to help him onboard and asked for his advice on the new super business critical project that was next in our todo team pipeline. He is an ambitious guy so he wants to create his mark in the organization.
But for some reason the way he is approaching it doesn't seem right to me.
He plans to create a new team taking over the business critical project while splitting the newly formed team I lead on the same project that I helped him ramp up on.
I opposed to this asking for rationale for a new team.
there seem to be now two impressions of my work:-
held by my peers, folks I lead and product manager of good business delivery and product timelines. I am respected among both.
the principal Engineer tries to devalue my work in front of senior engg. Leadership saying things like I am overcommitting and under delivering if I do this project with the existing members of my team in public and in front of senior engg leadership.
The automated integration testing project which no one was doing before and we were starting from a basic version to iterate on. This is now communicated to engg management as every team is trying to do their own testing.
My engg management for some reason is siding with him since he has 15-20 years of experience and i have 5. He also is principal and i am 2-3 levels below him.
for some reason I am being micromanaged with no fault of mine.
From engg management perspective I have been just told to lead the project that I am currently leading and just help the team formed by principal engg to start the project.
I have communicated my expectations of being able to continue leading the project. Product is in support of that but engg managment isnt.
I have also tried giving feedback to the principal engineer that his actions are disruptive to the team and becauase of what he is doing he is slowing us down and blocking us from doing critical projects.
My worry is despite doing the hard work the project I have the most context on and I worked on for a while is being given to someone else and second i will not be given credit for the hard work I am doing.
Should I just change teams. I dont want to leave my existing team because I do think they need me but I feel I would rather create more impact where I dont have to swim against the tide. I may also be suffering from sunken cost fallacy here where I knew I led the development of a new critical project
Tia for your help.
When I've been helpful in the past, word quickly spread and a bunch of random engineers started pinging me for help, sometimes aggressively. Sometimes people would delegate grunt work like asking me to test their PRs that do library upgrades instead of testing them themselves. Or asking me to debug their dev environments because they heard I fixed another engineer's dev environment. Sometimes it'll just be asking for expedited code reviews even though I have no domain knowledge on their PRs. We work on the same platform, but are not on the same team or often even the same org. There are only so many hours in the day and I need to get my own work done as well. How do you decide who to help and under what circumstances? Advice on how to push back without damaging the relationship? As far as I can tell, it looks like anyone from E4 through E7 are the ones making these requests.
I want to give feedback to my manager.
This person just joined the company as my manager.
So far as my manager, this person has been nothing but helpful.
I only have good things to say. Is that normal ? How can I share more
Hello. For anonymity, my name is John, and my coworker is Bob.
Bob is relatively new, so I help Bob out when he's blocked on a JIRA ticket. I don't mind helping, but Bob only mentions my name during standup when he's unsure of something (e.g., John and I worked on this ticket, and we think this might be the issue).
During the times my name was mentioned, I probably did think that was the issue, but these are incomplete thoughts + theories that I'd rather not be publicized if I am wrong (I don't mind being wrong in public, but I'd rather be wrong on my terms).
I don't think Bob is doing the above on purpose, but it does bother me.
Here are some possible solutions I've considered:
I think (c) is too confrontational, and given that I don't think that Bob is doing it on purpose, I can probably skip this. I want to stick with only (b), but I want the option to share an incomplete theory as it may indirectly help Bob to a solution or teach them something new.
What do you all think?
I am an L4 engineer with decent knowledge of my team's stack.
What are some actions I can take to meet expectations in my current role for the next few years, while minimizing the amount of time I spend on work?
Given that I'm not shooting for a promotion, does that change how I should approach relationship building with senior folks on the team? There is a lot of advice on Taro about relationship building, but it appears to be aimed at folks who wish to promote quickly.
I'm more of an extrovert, while my tech lead is more of an introvert. I feel like our relationship isn't as open and honest as it should be, particularly around sharing feedback. They often times have major feedback for me, but it will come too late, either deep into project execution or as late as performance review.
How can I make this relationship more fluid, so I can get feedback to improve earlier?
DoorDash has a tradition where your manager sends a "Dashiversary" email to the entire company on your work anniversaries. The manager creates a Google doc and collects notes & photos from your colleagues and cross-functional partners, then adds his/her own note at the top of the email. Given the impact of Deep Thanks, what should I write in these notes to leverage these opportunities to build relationships?
I am usually very competitive and while I love my friends, I have this internal push to always do better than people around me. I got promoted to SWE II within a year in 2021 and I was so proud of that. However, this year my manager changed and without really knowing or understanding me, he gave me the feedback of "didn't meet expectations" in our annual performance review in Feb. I had full plans to change my company soon since I didn't feel supported by my manager. However, my father fell incredibly ill in May (still is) which canceled all my plans as I moved back home to support my family.
I have a feeling my friend who is on a different team than I am (but reports to the same manager) might get promoted to senior. She deserves it. She got different opportunities than I did but I can't help but feel a pang of jealousy knowing that all I want this coming Feb is "meets expectation" rating while my friend might get promoted. Another friend of mine switched to a company that seems incredible but I somehow feel "behind" in my career despite knowing that I will meet the career goals I have next year. I am already a million times a better software dev than I was beginning of the year. I have close relationships with my colleagues but how do I focus on my own lane and not compare myself to others?
I recently got moved to a new manager, and I've been having some trouble building back up the more fluid and quite positive relationship I had with my prior manager. In particular, I'm trying to get more signal into my feedback and how I can improve. When I go over this kind of content with my new manager, they'll say something more quick and high-level like "That makes sense", but they won't give me something more specific and concrete. How can I go deeper with these kinds of conversations while keeping our relationship healthy? I want to make sure I respect their boundaries.
I already have great working relationships with several staff engineers in my org, but I'd like to take it a step further and enter a formal mentorship with them. How can I go about this in a natural way?
My current manager comes from a very different background compared to me and my team, which has lead to some misalignment in terms of what the team should do and how it should do it. I feel like there's a fundamental difference in working styles here.
This mis-sync has shown in our 1 on 1 meetings as well. They're less about my career growth and my goals and more about them and their way of doing things.
Any ideas on how to remedy this situation?
Whether that be a formal mentor within the company or you have found a mentor outside the company.
e.g. I want to level up as an engineer, have sought out a mentor(s) to help me do so, what are some of the things I should make sure happen that I get the most benefit out of the relationship.
I want to build a stronger relationship with my manager, but I'm unsure where the boundary should be when it comes to opening up to them. For example, I have some confidence issues which affect my work performance a bit: Is that something that's okay to share with them or is it possible that they'll hold it against me? I haven't interacted too much with my manager as I'm fairly new to the team, but so far, the signal has been positive.
With tons of layoffs already happening and rumors about impending layoffs, is there something one can do to protect themselves? Logically, performing above expectations and being a critical part of the team would make sense. However, recently looking at LinkedIn and other career news, seems like no one can be sure that they’re safe. So, do you have any tips on how to approach this? Does it make sense to stay put within a team where you have great relationship with your manager and skip etc or find a new company to get ahead of this risk? Thanks!
I am working on building a framework and often I need help from a IC XFN partner to keep making progress in the project. However, many times they would not respond back or give vague responses on chat threads. When I set up meeting with them, they would not be quick to respond to meetings. I once asked them that I had certain questions that I documented after going through their codebase and need answers from them, however they would not take me seriously. How do I handle this in a positive way, keep making progress and unblocking myself? I want to building meaningful relationships with XFN partners and would like them to respect me however, it seems they are not reciprocating the same
I moved to the Bay Area to be within a denser network. However, everyone is working within their own silos, and it's hard to break them out so you can develop a deeper relationship with them.
Can you recommend some good platforms to network with other engineers in the Bay Area? I would like to meet other engineers at a similar level and working within a similar space.
I've already tried some basic things which I didn’t find much value from:
In Alex's case, he met Rahul at Meta and now they're cofounders. How can I build up such deep relationships with other people at Google or any future company I work at?
For those of you who have had a few dozen (or more) colleagues over the years, how do you "maintain" your professional network?
Some things I've tried are:
Look forward to hearing what has worked for you...
When anyone asks "How is it going", I just say "Good, how are you doing".
There are always awkward pauses. I am skeptical about speaking anything without preparation in advance. Want to communicate well with others (not only in office but outside office too) that may lead to long term friendship with at least one or two people. Any coaching you recommend for extreme introverts to build this skill?
On H1B visa. New to US. I need some information on what other H1Bs are doing related to finances, buying a house, green card etc. Unfortunately, only people I know are the ones from my office. I have tried meetup apps and still have not gotten anyone with experience in the topics that I have mentioned. I have some senior collegues who are/were on H1B. Is it okay to ask these personal questions? All we have are office team lunches. When to bring up these questions? How to keep in touch with them even after we leave the team/company?