π§βπ» Senior Software Engineer - Level L4 (Team & Stakeholders)
π οΈ Technical Skills
π Code Quality & Testing
ποΈ Writing Code
- Consistently writes production-ready code that is easily testable, easily understood by other developers, and accounts for edge cases and errors.
- Understands when it is appropriate to leave comments but biases towards self-documenting code.
- Evaluates and implements design patterns where required and actively improves and depreciates old code.
- Should be able to independently design database schema and code optimizations.
π§ͺ Testing
- Understands their team's testing approach, and uses quality metrics to identify gaps.
- Works with their manager and team to recommend solutions that are in accordance with accepted testing frameworks and the testing pyramid.
- Able to create automated tests to cover complex multi-tiered systems from end to end.
π PR Practices
- Follows PR practices defined by the engineering team, such as PR size, PR description, PR merge time, etc.
- Conducts thorough review of PRs and suggests changes and modifications.
- Cross-service PR reviews and dependency evaluation.
- Impact analysis on other services related to modifications of code in the PR.
π Documentation
- Follows the documentation process set by organizations and reviews documentation of peers and juniors.
- This includes in-code comments and external documentation (Confluence, Google Docs, etc.).
π Debugging & Observability
π Debugging
- Proficient at using systematic debugging to diagnose all issues located to a single application.
- Uses systematic debugging to diagnose cross-service issues.
- Reviews and helps peers in setting up debugging tools and able to independently identify production issues.
- Should be able to provide RCA for production issues post-debugging.
π¨ Monitoring
- Drives monitoring work on their team based on the engineering organization's monitoring philosophy.
- Is aware of the operational data for their teamβs domain and uses it as a basis for driving changes to achieve stability and performance improvements.
ποΈ Software Design & Architecture
Understanding code
- Has expertise in their team's domain, including the breadth of services, how they interact, and data flows between systems. Understands adjacent domains as they affect their team.
- Can quickly grok complicated legacy code, make changes to it, suggest and execute a refactor on that code.
ποΈ Software Architecture
- Architects services and systems using well-accepted design patterns for iterative, autonomous development and future scaling.
- Anticipates future use cases and makes design decisions that minimize the cost of future changes.
π‘οΈ Security
- Actively works with engineering leadership, their manager and team to refine their team's approach to security based on the company security policy and the engineering organization's security strategy.
- Fosters a security first mindset within their own team, and leads by example.
- Understand and contribute to security guidelines setup by organization in context to system design and data as per compliances
π Delivery & Effectiveness
π¦ Incremental Value Delivery
π¨ Work Breakdown
- Reviews epics and projects critically and ensures theyβre appropriately broken down and prioritised, and well understood by the team.
- Reaches out to stakeholders directly during ideation, planning, and execution stages of development to ensure alignment.
π― Prioritisation, dependencies
- Ensures dependencies are noted and well understood by the team, at both the task and epic level.
- Works within their team to foster a culture of priority setting and urgency in alignment with engineering organization and company strategy.
πͺοΈ Dealing with Ambiguity
- Effectively handles risk, change, and uncertainty within their team. Decides and acts responsibly in their work with their team without having the total picture during routine business, as well as when in high pressure situations.
- Ask right questions to stakeholders to get more clarity on the task in hand for themselves and team
π Self Organization
β³ Reliability, delivery accountability
- Anticipates and communicates blockers, delays, and cost ballooning within their teamβs projects, before they require escalation.
- Ensures expectations with their team and external stakeholders are clarified between all parties involved.
- Ensures expectations within their team are clarified between all parties involved.
- Communicate timelines slip atleast a week prior.
- Reduce and optimize team delivery.
- At this stage mentoring and helping juniors to increase their efficency in delivery and development speed.
π° Economic Thinking
- When taking action, weighs cost and value in order to take the most economic action. Uses this thinking in their own work, and to foster a culture within their team where people apply economic thinking to make timely decisions.
- Intracting with stakehlders to understand requirements in accordance with resources and pricing. Optimize and contributes to cost reduction of system and cloud resources.
- Should be able to Analyze and provide cost and feature comparison between different existing solutions.
π€ Feedback, Communication & Collaboration
π Feedback
π£οΈ Delivering Feedback
- Fosters a culture of delivering praise and constructive feedback within their team and team's respective business stakeholders. Actively demonstrates these behaviours.
- Actively hold and participate feedback loops.
π§ Seeking and Receiving Feedback
- Works within their team and with its business stakeholders to foster a culture of seeking out feedback and using it as a tool for growth. Actively demonstrates these behaviours.
π£ Communication
π¬ Effective Communication
- Is able to communicate effectively with a diverse team. Fosters a culture of clear, concise, effective, audience-oriented communication on their team, ensuring teammates actively listen to others and are understood.
- Pays attention to nonverbal communication.
- Actively become a good communication channel between stakeholders and juniors.
- Often Involves in client/customer communication to understand and provide better support and solutions.
π Knowledge Sharing
- Fosters a culture of documentation and knowledge sharing within their team and with their team's business stakeholders; actively demonstrates these behaviors.
- Strategically spends extra time on code reviews where their feedback isn't explicitly requested but has significance for the team such as a PR from a new engineer or part of an important project.
- Actively explores new technologies and solutions for experemenation, Random and communicate findings with across team and leads.
- Conduct tech discussions on verious new tools which can be adopted in organization.
π€ Collaboration
π₯ Teamwork
- Consistently helps their teammates overcome obstacles, resolve blockers, and complete work tasks. Gives or shares credit where due.
- Take ownership incase of delivey slips and ensures to reduction of slips and should be able to provide solution to it
πΌ Relationship building
- Works to build and improve strong relationships with their teammates, manager, their teams' relevant business stakeholders, and engineers across the organization.
- Leverages relationships to better plan for and position their team.
ποΈ Handling Disagreement
- Fosters a culture within their team where people are encouraged to share their opinions and contribute to discussions in a respectful manner, approach disagreement non-defensively with inquisitiveness, and use contradictory opinions as a basis for constructive, productive conversations.
- Is open to changing their perspective and plans based on others' input.
ποΈ Leadership
π€ Decision Making
- Is trusted to make decisions within the team by their peers. Can communicate their decisions and justifications to both peers and their manager to get buy in.
- Takes ownership of decisions made within their team by helping their teammates make clear decisions in alignment with organizational goals, backing decisions made, and taking responsibility for their success.
- Raises awareness for how biases impact decisions and ensures accountability is practiced within their team. Demonstrates these behaviours themselves.
- Able to give justification for the decision taken. Should be able to convince stakeholders for the decision making
π§ Driving Alignment
- Fosters a culture within their team of having conversations based on company strategy and engineering organization priorities to create alignment.
- Strongly oriented towards goals and ensures their team is continuously working towards their goals.
π Process Thinking
- Thinks about team practices and processes and (in consultation with the team's manager) regularly discusses improvements with their team.
- Sometimes collaborates with others to improve engineering organizational practices and processes.
- Exploring and contributing to current engineering proccesses and suggest improvements to leads
π€ Facilitation
- Facilitates discussions within their team, ensuring that everyone has an opportunity to share their opinion and be heard, and that discussion outcomes tie to stated goals.
- Often Conducts tech discussions regarding new product/platform/tool adoption .
- Product improvement/feedback discussions
π¨βπ« Mentoring
- Mentors their junior teammates in an open, respectful, flexible, empathetic manner.
- Seeks out mentoring opportunities specifically to create team redundancy and backfill ability.
- Mentors members of other teams as needed.
π― Strategic Impact
π Business Acumen
- Has a thorough understanding of their team's domain, strategy, and how it maps to overall market trends. Has a thorough understanding of adjacent teams' strategies and how they map to their team and interaction points.
- Should be able to contribute to other teams work as well.
π Strategic Work
- Collaborates with the team's manager to shape the team's engineering work based on the organization's engineering strategy.
π― Product Thinking
- Evaluates and creates new product features in collaboration with the team's engineering and product manager.
- Influences the team's product and technical roadmaps.
- Simplifies product and technical design through proactive conversations.
- Actively intract with stakeholders and understand the requirement from stakeholder perspective.