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.