Promotion

Promotion

The clearest way a company can acknowledge your growth. At the end of the day, you can't solely interview your way to a principal engineer; promotion is the true foundation of your pay and career.

How can I best invest my personal development time as a Staff Engineer who would like to continue progressing as an IC?

Staff Engineer at Taro Community profile pic
Staff Engineer at Taro Community

I'm a Staff Engineer in the satellite telecommunications industry where I am responsible for the strategic success of the software products in my department. My organizational responsibilities and weekly calendar align almost perfectly with the . I'm sure that it will come as a surprise to no one that getting to this point in my career was an intense and conscientious journey. I am self-taught, I fell in love with programming as a child, and I have never attended a University. Things are not even close to perfect, but I am happy with my career so far.

My day-to-day work does not involve much programming, but I spend the vast majority of my time communicating with Tech Leads, Scrum Masters, PMs, TPMs, EMs, etc. to coordinate and accomplish different tasks. The rest of my time is split between communicating and aligning with high-level product stakeholders, such as my boss, and mentoring engineers. When I do code, it is because there is some experiment I want to run, i.e., I might create a prototype of a new product or feature that could massively impact a departmental OKR.

Outside of my day-to-day work, I dedicate as much time as I can to learning and practicing new technical (programming, cloud), professional (LinkedIn Learning), and domain-specific (satellites, AI) skills. I also consume a lot of content here on Taro and I often participate in company and community programs that I believe in (change maker programs, diversity and inclusion programs, etc. as a participant or as a coach).

I would love to have input on this aspect of my career as a Staff Engineer who would like to be a Fellow one day. As I make progress in my career, I find that (obviously) the expectations others have of me, in regard to being at the forefront of technology and really knowing what I am talking about in domain-specific (science-heavy, business-heavy) topics, have grown exponentially. I've already adapted my approach to developing domain-specific skills, for instance, instead of relying solely on MOOCs, I also now have regular sessions with domain experts (business folks with advanced industry-relevant university degrees), something my boss encourages and expects me to continue to do. I have now also considered the prospect of going to university myself, something my employer would sponsor.

So the question is, how can I best invest my personal development time so that as I progress in my career I can continue to meet, or even surpass, exponentially growing expectations?

I'm sure someone will have a great idea of how to approach this challenge. Also, there is a quote I appreciate from Alex Chiou that gives me hope that I can do it.

It wasn't due to natural talent or anything - I'm honestly not that smart.

Show more
64 Views
1 Like
4 Comments
5 hours ago

How to create influence in a team of Mid-Level Engineers?

Mid-Level Software Engineer [L4] at Snap profile pic
Mid-Level Software Engineer [L4] at Snap

Hi. Sorry for the long post.

My manager is quite happy with my performance as an IC, so in our 1:1s during feedback sessions, his suggestions for me are usually around increasing my influence within the team. Drive decisions, improve processes etc.

To add some context, Snap has a HUGE L4 band. Bigger than most companies (L5 at Snap is equivalent to E6 at Meta). This means we have a LOT of L4 engineers.

So right now I am in a situation where my team has 6 L4 engineers, ranging from 3 years of experience to 10 years of experience, with me falling towards the lower end of this range. To make matters worse, we also don't have a TL or Principal Engineer in the team. Which means we don't have a "guiding" engineer in the team to help "decide" on important technical decisions.

This has some consequences.

There's a big scope for "showing influence" in the team. Since we don't have a TL, every important decision is an opportunity to influence the team. And literally every L4 engineer is trying to jump on that ship. So we have this situation where people try to out-influence others (not sure if thats a word). This leads to lots of debates, lots of pointless meetings, and people eventually "fighting" over trying to be the decision makers for a decision.

A real example scenario: we recently had some discussions about improving our operational tickets backlog process, and literally every single L4 in the team wanted to write a doc on it to suggest improvements, to introduce a process to make the ticket backlog handling better, to show "influence" in the team.

I guess my question is, in a team like this, how should I try to build my influence ? I realize that everyone in the team is trying to achieve the same, so what can I do different. I know this is not a unique situation and very very common among more senior ICs, so hoping to pick their brains.

Show more
134 Views
4 Likes
1 Comment
10 days ago

Feel like I lost a lot of my time at my current company

Anonymous User at Taro Community profile pic
Anonymous User at Taro Community

Sorry if this seems like a rant. Trying to collect my own thoughts.
I have been at my current company as a mid level backend engineer (a startup - around 10-12 years old, went public recently) for around 4-5 years and have a total of 6 years of work experience.

I feel like there has not been much career growth. Got my first promotion after an year of joining the company and not much thereafter. Thus, feeling very lost about where to go next from here.

In the current climate, we had our recent round of layoffs in the organisation. Also, I don't feel very good about some of the things in the organisation such as the stuff I am working on. I don't feel I am learning enough. It is just business requirement - one after another, that too often getting cancelled. Last project I worked on for 3 months, got cancelled after that due to changing priorities. Stock price is plummeting as well. I feel like the best way forward is to restart my own learning journey - what are your thoughts? I used to be one of the top performers in my current and past company and even got awards around 3 times in last 6 years. I tried to work hard for promotions as well, but even after multiple rounds of my manager asking me to do things such as leading the team, multiple XFN projects, infra level revamps etc. - I did not get a promotion. I asked my manager if there is a list of things I should do consistently for a good enough time and if then, we'll be able to make a case for me. He said, that I am trying to gamify the system, but I was only trying to set goals for me. Now, I feel somewhere midway, I have lost my motivation. Feeling a little depressed and often evade work, just coasting to get by.

I want to take charge of my life again and be positive. Quite often I think about other career choices, but have always been in love with CS (and math in my childhood, particularly due to them being intellectually challenging). Just want to make up for the time I lost, and want to do some things I am proud of. I often think of my life being pointless in last couple of years. And want to get a renewed sense of motivation and be excited for the things I work on.

I feel like joining a fast paced place or somewhere I can learn a lot (even outside of work) might help. Don't feel very happy about my current situation though.

Show more
196 Views
5 Likes
2 Comments
2 months ago

What makes a staff engineer from a technical perspective?

Anonymous User at Taro Community profile pic
Anonymous User at Taro Community

I have about 5 YOE and trying to grow from Senior -> Staff engineer but noticing that the path is taking longer than I'd hope.

This is the case whether I try to speak to other companies and ask about interviewing at that level or try to grow within my own company.

Within my own company: Requirements unclear, seems to be more time based (just keep on shipping). Since we're on the smaller side, we don't have a clearly defined structure like FAANG.

Externally: Due to the YOE, usually discussion of Staff isn't even an option even though I think I'm doing Staff level work. In fact, they usually decline the idea before even having a chance to explain what I'm working on.

The projects I'm working on span the entire org (startup), I have multiple mentees, and org-wide impact. I will be honest and say that I don't think the projects I work on are necessarily insanely technically complex (not going out to millions of users, dealing with hyper concurrency issues, or needing to deal with large scalability issues), but they do have a large amount of scope and senior+ level management required to run them.

I think from the project management perspective, I have things nailed down pretty well.

So I wonder if I'm either missing...

  • YOE - Just some sort of arbitrary minimum that is being placed across the board for certain levels to be achieved
  • Technical expertise - I definitely admit that I'm not necessarily INSANELY technical. For example, I can admit gaps like: I don't know how to design a concurrent document editing system like Google docs, or I wouldn't be able to write a live streaming service without reading up on the proper documentation and understanding better how those systems work. Are things like this a requirement to be a staff engineer? To just be more aware or know right away how various systems like this are designed, without needing to do research beforehand?

I'm essentially trying to understand what my gaps might be, and the technical aspect is one I'm unsure about how relevant it is.

Would appreciate any thoughts, especially from Staff+ engineers, maybe sharing what they feel makes them a Staff vs a Senior and how much technical skills play a role vs other elements.

Show more
1.8K Views
17 Likes
Editor's Choice
1 Comment
2 months ago

Seeking Advice: Advancement from L5 to Staff Role and Leveraging Knowledge for Impact

Senior Software Engineer at Intuit profile pic
Senior Software Engineer at Intuit

Hello Taro community,

I hope you're all doing well. I have a question and would greatly appreciate your insights and guidance.

Background: I joined the company last year (ex-FAANG) as an L5 level and have been actively involved in developing internal tooling for a new product. Recently, while exploring our growth and levels documents, I came across our internal rubrics that outline the expectations at each level.

Situation: After identifying a gap between my current level and the staff level, I expressed my interest to my manager. As a result, I am now leading a team of five individuals in the endeavor of implementing automation tooling from scratch. This effort encompasses setting up everything related to automation.

Additional Information:

While my background is primarily in development, I possess knowledge and experience in quality as well. Given the broad impact automation can have across the company, I am eager to leverage my expertise and make a significant contribution.

However, I am uncertain if my focus on quality within a developer role might put me at a disadvantage when aiming for a staff position as a developer.

I am seeking guidance on how to navigate the path towards a staff role, either by leading projects to completion (quality) within my team (& across) or by continuing to work on internal tooling rather than customer-facing products.

Or should I pivot to product development tasks - How do I navigate this conversation with my manager about this dilemma?

Lastly, how can I show metrics and impact?

Show more
166 Views
1 Like
6 Comments
4 months ago

Stuck as an Entry Level Engineer

Anonymous User at Taro Community profile pic
Anonymous User at Taro Community

Hello,

As the title says, I’m stuck as an entry level engineer in FAANG for almost 4 years now. I’ve been reflecting on what I’m doing wrong.

My first company I worked for 1 year and didn’t not like it because the lack of mentorship. I joined and my questions never got answered, the tech lead didn’t really care about giving mentorship, just gave me links and bug IDs. I was able to survive for 1 year but I left the company because I felt so lost. My manager mentioned that I was “on track” to getting promoted but I hated the culture.

Then worked for 1.9 years on another company, where I received awards for my projects and contributions. I did receive mentorship here, but I was not able to get promoted. At the end of the timeline my manager mentioned I was moving slower and slower. I was working as a full stack and I believe my error here was not playing my strengths, since every time I had to take another project it would be on a different area, such as server on a language I never used before. I had a few discussions with my tech lead and I felt I lost my team trust because they would give a lot of comments, and just get a lot feedback from other people. This kinda demoralized me and made it hard to keep working so I changed teams. My last team I worked for 8 months before getting laid off. Here I also received recognition for my projects. My first project I missed the deadline because the onboarding had nothing to do with my project. I integrated our tool with an external team, so most of the code base I worked was not even ours (the techlead and team didn’t have much knowledge). Then I was given another project where I was starting to get traction, onboarding and project matched, I had to ramp up again on the new tech stack and my manager was getting frustrated with me, my team was very helpful and I was slowly to become independent. I feel like people trusted me here and code reviews would go smooth this time, at the end I was finally getting positive feedback, but was affected by the layoffs. From reflecting, here is what I did wrong:

  • Not communicating well enough my work with my managers. Status updates I was blocked/learning and that would make me look slow.

  • Not very good mentorship, I feel like at the beginning I needed lots of 1:1 to be able to learn our teams codebase. Sometimes I got very good mentorship but not complete. So I learned well parts of the code base where the tech stack applied.

  • Switching projects too much, went from front end, full stack, server side with several languages. Every time I had to re learn a lot of new of the tech stack.

I did get several recognitions for my contribution with at least helps me think I’m not completely inadequate for the field.

I am looking for a new position, is there anything that could help me perform well as a mid engineer?

Thanks

Show more
430 Views
8 Likes
2 Comments
7 months ago

What is the best way to let my management know I am looking for internal transfer?

Anonymous User at Taro Community profile pic
Anonymous User at Taro Community

For me i am looking for promotions. I architected, led a staff level project successfully with 5 engineers working with me over a period of 5 months.

Nor one person had a bad thing to say about me or the project and everyone agrees it was a major step for our team.

To be fair, I had a troubled relationship with a principal engineer who namecalled me in a public meeting with my engineering manager in that meeting and I decided to stop talking to him (i would avoid going to meetings with him instead of confronting him)

The principal engineer gave my managers feedback that I am trying to hoard information.

Now my manager is giving me the feedback that I don't go along well with more senior engineers (which is not true, it is just 1 person). I was denied promotion even though more senior engineers than me who I led are getting promoted.

There is also some resume driven development going on at the management level and pe level which is what I was asking questions about.

This was the reason for strong resistance against me and product.

From my end I have tried to normalize my relationships. But it seems my hard work may be better rewarded elsewhere.

I don't want to say all this but am curious how would one let their managers know that they are looking outside within the company. The reason for letting them know is they will get an email when I apply internally.

Show more
125 Views
2 Likes
1 Comment
7 months ago

How to navigate promotion talks when no direct manager or director in sight for approx. 2-3 months while being a new member on a team?

Anonymous User at Taro Community profile pic
Anonymous User at Taro Community

I recently changed teams(been over 4 weeks). The current team did not have a manager/sr. engg manager to report to, and everyone reported to an Sr. director. This sr. director reported to a VP in my org.

Unfortunately during a round of layoffs, our director got laid off. So, now imagine my team is "headless".

Our VP did mention that they will try to bring in someone interim. Say that happens, and I am able to make a good connection with this "new" but temporary manager, but after a few months, we get a "permanent" manager, my questions and/or concerns around these are

  1. This would be my first time I will be in this situation mine is a tier-3 company, also not a tech-first company, is this how even Big Tech works? How do you all navigate this change, and continuous (non-technical) context switch of leadership?
  2. As you might have guessed how do I best make sure that my accomplishments(refers to the brag doc*) gets clearly communicated between my old manager, me, and my new manager?
  3. Does it make sense to even "talk" about getting promoted with the old manager if I have been on this team for 4 weeks?
  4. Re. to point 3, some notes about my accomplishments: I already was able to find bugs in their pipelines, and communicated about this to cross functional teams too, and everyone acknowledged this, and we have been able to avoid a major failure while shipping to prod environment, thereby saving us time(in months). What I am trying to say is I have been making(in my humble opinion) impact from day 1. I also am contributing to an internal library which will be used for onboarding several teams(cross regional too) in my company. I am the second developer on this repo. I already am keeping track about all of this in my "brag doc", I have been clearly communicating about my work with my scrum master, my current Principal Engineer, and other engineers.
  5. This is painful to write but, we have 3 engineers including me who are on the same level as mine(level 2), 1 Level-1, and 1 Principal Engg. Now, I am not comparing, but how do I put my best foot forward so that I too get a shot of pushing forward my promo packet along with others? There is a notion in my company(I dont know about Big Tech) that we "tend to" not have more than 2 level-3 engineers on a team, so should I just give up of not hoping to get promoted, and instead keep my head down and wait for new year or until I quit? Sorry if I sound negative, but its what it is.

Some more information about me:

YOE: 6+ this is what has been killing me from inside, 6+ yoe, and stuck on Level-2, I agree things were not hunky dory with me(been through a lot of personal s***), and couldn't focus on this side of my life.

I agree this is my mistake, but I know myself, and I know I can make it work,I can push myself and make it work, but asking for a guidance is all.

Appreciate you all for reading till the end, can't thank this community especially Rahul,and Alex.

Show more
75 Views
1 Like
3 Comments
7 months ago

Should I leave my startup after 3 years for big tech?

Anonymous User at Taro Community profile pic
Anonymous User at Taro Community

I’m considering leaving a startup because of 2 things I’ve seen on Taro:

  1. faang+ as a long term investment in your career
  2. .

2019 Goal of Joining a Startup

  • Learn a lot about how to be a good software engineer

  • Be an early employee at a startup that makes it big

  • Quickly become an Engineering Manager because I like working with people, helping others

2023 Thoughts on Staying as an Eng Manager or Joining Big Tech

  • Dream of being an EM, is happening on small start up scale with a growing number of reports who like my management so far

  • The dream is to be early at a unicorn and that is close, but

    • The new standard should be 10B not 1B

    • Doing this with a first job is not necessary and high risk

  • In 2-4 years I’d likely still be a engineering manager from a no-name startup

  • L5+ engineer in big tech may fit well with my personality right away based on Taro, where I love collaboration, helping people, product and technical challenges

    • I like not just spending 80% of my time heads down coding and that may be possible and expected right away in big tech, no need to be a manager
  • Getting a 2 FAANG+ badges on my resume over the next 4 years would be more way more worth it than even a million dollar payout from a startup

    • Could have many doors opened for high level roles at startups OR faang depending on what I feel like at the time

    • Big tech stock offer may also easily be worth 1M in 4 years

Priorities 2019

  • Supportiveness of team

  • Growth opportunities

  • Company prestige

  • Maximum outcome (Risk)

  • Compensation

  • Company ethics

  • Product space

  • Technical space

  • Work-life balance

  • Level/title

  • Benefits

  • Location

  • Stability

  • Remote work


Priorities 2023

  • Supportiveness of team +0

  • Work-life balance +7

  • Compensation +2

  • Company prestige -1

  • Growth opportunities -3

  • Stability +7

  • Company ethics -2

  • Remote work +6

  • Level/title +1

  • Benefits +1

  • Location +1

  • Product space -5

  • Technical space -5

  • Maximum outcome (Risk) -10

Taro priorities video is

Startup Stats

  • 150 people, 25 engineers (doubled from a year ago)

  • Fall 2021 had 50% investment at 250M valuation

  • Dec 2022 450M valuation

  • Revenue has since doubled in last year to 125M

  • Profitable per years with 20% gross margin

  • Growing industry

  • Not venture backed, so not expecting 20x growth

  • Estimated in 2-4 years to sell for 1-2B

How to evaluate a startup video

Current job stats

  • Team lead for a year after 2.5 years as Software Engineer

  • 0.1% equity, 100k cash

  • 18th employee, 4th engineer

  • Dream of being an early employee at a unicorn, seems close

  • Would lose all stock if I leave before acquisition/ipo

  • Biggest point for discussion: ***2-4 years of being manager at a small startup may not qualify me to be an EM in big tech***


FAANG+ Offer

  • L4 equivalent

  • 190k cash, 350k stock over 4 years, 60k sign on bonus

  • Work life balance is supposed to be great

  • Great food, big tech lifestyle that I’ve always heard/dreamed about

  • Would work to be promoted to L5 in 1-2 years, then manager a year after that.

  • Being a new person at a fresh company sounds very exciting now, I know the business fully and the tech stack of the current place to the point where many things Ive see before and feel stale/boring


Questions

  1. Based on my write up about values, priorities, liking collaboration, would I like being an IC L4 coming from being a manager where I have solid tech skills but strong soft skills that I enjoy using.

  2. If I stay at the start up would I be able to get a big tech EM offer with 3-4 years of management experience at the start up? Note this question shows what I’m learning now as a manager.

  3. Should I down level myself from L5 to L4 if I think I could get the offer at L5 but am not sure about the certainty of success? (Question asked separately )

Show more
205 Views
4 Likes
5 Comments
9 months ago

How to prioritize Growth vs. Technical Learning?

Mid-Level Software Engineer at Citrix profile pic
Mid-Level Software Engineer at Citrix

I am currently on a team where I am assigned to work on a different area of the product(s) in each quarter as per the priorities of the leadership for that quarter. This has resulted in me gaining a good full-stack overview but not much depth on any specific components/technologies. I've been on this team for around 18 months right out of college but 80% of the technical work I've delivered till now has just been pattern-matching based on the existing code and infrastructure, although the outcomes have been impactful for the business. I feel like I'm not learning anything technically significant beyond company/product-specific knowledge which are not transferable to other companies. When I check out job postings from other companies for my level of experience, there always seems to be a focus on having expertise in some technology, which I can't confidently claim. This brings me to the following questions:

1. Should I stay at my current company? My career growth prospects seem great here as I have a very good reputation in my team and sibling teams, and have gotten very good feedback and visibility from managers and seniors. I also work as the lead developer for a legacy product which is not that robust and has hard-to-reproduce customer bugs, but the leadership has taken a renewed interest in adding new features to it, resulting in more potential scope for me. The main downside is low technical-learning as mentioned above, and I've heard this same remark being mentioned by senior engineers who have joined from other companies as well.

2. If I decide to switch companies, how do I bridge the lack of technical expertise that's expected for my level? When a recruiter views my resume, the technologies that I've used at work and as part of side-projects are all over the place, without a clear specialization. Although I'm confident that I can pick up these stacks without trouble on the job if needed, I feel underconfident in them in an interview setting.

Show more
1.2K Views
6 Likes
3 Comments
9 months ago

How do I turn SWE roles behaviors/descriptions into concrete actions in a startup environment?

Entry-Level Software Engineer at Series B Startup profile pic
Entry-Level Software Engineer at Series B Startup

Question: "For being promoted from SWE I to SWE II, how do I take the behaviors my company has associated with each role (below) and make that more concrete for a growth plan, taking into account the changing & flexible timelines startups have?"

For context, I already have weekly one-on-ones with my manager (who is new at being a manager & is also my mentor), and a growth plan (that I created with him) that roughly outlines (meets most expectations, meets expectations and exceeds expectations for my role). Additionally, keep in mind I work at a startup w/ <30 people so highly specific concrete goals set on a particular date can change in 2-3 weeks as priorities change. Also, my company has defined a series of behaviors as to what each SWE level should be able to accomplish. Here it is.

Software Engineer I (<1 year - 2 years)

  • Technical Skill
    • Broad knowledge of CS concepts
    • Focus on growing as an engineer, learning existing tools, resources, and processes
  • Getting Stuff Done
    • Develops their productivity skills by learning source control, editors, the build system and other tools as well as testing best practices.
    • Capable of taking well-defined sub-tasks and completing these tasks
  • Impact
    • Developing knowledge of a single component of our architecture
  • Communication & Leadership
    • Effective in communicating status to the team
    • Exhibits company’s core values, focuses on understanding and living these values
    • Accepts feedback graciously and learns from everything they do

Software Engineer II (2-6Years+)

  • Technical Skill
    • Writes correct and clean code with guidance; consistently fellows stated best practices
    • Participates in technical design of features with guidance
    • Rarely makes the same mistake twice, begins to focus on attaining expertise in one or more areas(eg. embedded , testing, algorithm, support code, commlink).
    • Learns quickly and makes steady progress without the need for constant significant feedback from more senior engineers.
  • Getting Stuff Done
    • Makes steady progress on tasks; knows when to ask for help in order to get themselves unblocked.
    • Able to own small-to-medium features from technical design through completion.
    • Capable of prioritizing tasks; avoids getting caught up in unimportant details and endless “bikeshedding”.
  • Impact
    • Self-sufficient in at least one large area of the codebase with a high-level understanding of other components
    • Capable of providing on-call support for their area including systems that they are not familiar with.
  • Communication & Leadership
    • Gives timely, helpful feedback to peers and managers
    • Communicates assumptions and gets clarification on tasks up front to minimize the need for rework.
    • Solicits feedback from others and is eager to find ways to improve
    • Understands how their work fits into the larger project and identifies problems with requirements.
Show more
120 Views
3 Likes
1 Comment
a year ago

Mid Level to Senior Promotion - What should I keep in mind?

Senior Software Engineer at Grab profile pic
Senior Software Engineer at Grab

I am trying to get promoted to Lead Software Engineer, which relates to an E5 level at Meta, if I am not wrong. I have seen several engineers in my organisation coast at the current level I am.

I wanted to understand if there are some key things I should be doing in order to perform at a Tech Lead level, so that I am promoted to one as well. This would be a bit long question, but please bear with me.

Following are some of the things highlighted in a few discussions:

  1. Should have demonstrated complex backend system designs - How do I create this opportunity to build a complex system for myself? Often, the projects we are a part of don't require complex solutions.
  2. Have a very strong code quality
  3. Mentor other engineers - I started having 1:1s with Junior engineers on how to grow. Have not been doing this with Senior Engineers, but I try to jump in calls with them whenever they need some help. Often, the credit goes hidden, and sometimes it does bother me, but not sure if there is some way around it. What are your thoughts?
  4. Handling production outages and incidents - Trying to be on top of it. Recently, have been putting out short term fixes, but alongside working on some libraries to fix it in an extensible way and have a larger impact with other teams as well. Sometimes, having visibility for my work in other teams seems to be difficult, but trying my way around this. If there is something you can recommend, that would be great.
  5. Should I mention in my skip levels that this is something I am targeting for myself? - Right now, my focus is to try to uplift the code quality, work on larger designs (a question mentioned wrt this), trying to uplift the team (I have created a channel where I share stuff that can help the team upskill, brief nuggets of information on how to write good code etc. Doing this almost twice a week for around 2 months now), trying to mentor engineers within the team.

Another aspect is that my team would be getting changed soon due to organisational requirements. Given that, How do I make sure I am on the right trajectory to getting promoted ? (One thing on top of my mind is that I would be asking for junior engineers whom I can work with and try uplifting, alongside asking for opportunities/projects that would have large visibility and impact.)

Do you have any other advice for me?

Show more
1.3K Views
25 Likes
Editor's Choice
8 Comments
9 months ago