<aside> 👉

A Software Engineer II is an independent contributor responsible for owning and delivering well-scoped features or modules with minimal supervision. The role emphasizes strong problem-solving, code ownership, effective AI-assisted development, reliable delivery, and active contribution to team quality and client outcomes.

</aside>

KRAs Description
Technical Excellence Design and deliver high-quality, maintainable, and well-tested solutions. Use AI tools strategically to improve design decisions, code quality, and development efficiency while exercising sound engineering judgment.
Project Delivery Own feature-level delivery, contribute to estimation and planning, and ensure predictable execution with minimal oversight.
Team Collaboration & Growth Actively contribute to team effectiveness through code reviews, knowledge sharing, and informal mentoring of junior engineers.
Client Awareness & Professionalism Understand business context, participate confidently in client interactions, and ensure delivered work meets client expectations and quality standards.

Technical Excellence Track

Key Areas Expected Responsibilities
Problem Solving & Design Breaks down moderately complex problems into clear, implementable solutions. Uses AI to explore multiple approaches, evaluate trade-offs, and validate design decisions before implementation.
Code Quality and Standards Writes clean, scalable, and maintainable code. Uses AI proactively to refactor, detect edge cases, and identify potential issues while adhering to team-defined standards.
Version Control (Git) Follows team-defined branch naming conventions.
Follows team branching strategies independently. Manages feature branches, resolves conflicts confidently, and writes high-quality commit messages, using AI where helpful.
Debugging and Testing Basics Independently diagnoses complex issues using logs, debuggers, and AI-assisted reasoning. Writes meaningful unit and integration tests and ensures new changes do not regress existing behavior.
Stack Mastery & Applied Expertise Demonstrates depth beyond basics in their primary stack: knows the common traps, best practices, and performance/reliability implications.

Makes sound implementation choices using stack-native patterns, and can explain trade-offs (e.g., why this state approach; why this API pattern; why this agent routing).

Debugs systematically using tooling and internals relevant to the stack (profilers, devtools, logs/traces, eval harnesses).

Raises the quality bar: introduces small reusable patterns, utilities, linting/testing improvements, or conventions that reduce defects.

Keeps skills current: upgrades understanding as frameworks evolve; can ramp up on adjacent libraries/tools when needed.

Uses AI tools effectively for acceleration (tests, refactors, explorations), and is able to spot subtle errors introduced by AI or juniors.

Examples: Frontend: understands rendering performance, memoization trade-offs, bundle/runtime implications, error boundaries, forms patterns, accessibility standards, testing strategy, browser quirks. Backend: understands API versioning, idempotency, retries/timeouts, rate limiting, schema validation, async processing, caching strategies, observability (metrics/tracing), failure isolation. AI/Agents: builds reliable agent flows (tool selection, routing, memory), designs prompts with constraints, creates eval datasets, monitors quality drift, handles latency/cost, applies guardrails and fallback strategies. Full-stack: chooses boundaries cleanly, aligns FE/BE contracts, anticipates integration issues, and reduces cross-layer churn | | AI-Assisted Development | Uses AI tools effectively for refactoring, debugging, test creation, exploration, and documentation; structures prompts with appropriate context; catches subtle AI errors (security issues, performance problems, incorrect edge cases) |

Project Delivery Track

Key Areas Expected Responsibilities
Feature Ownership Owns feature or module delivery end-to-end, from requirement clarification to production readiness.
Estimation & Planning Provides realistic effort estimates, articulates assumptions and risks, and uses AI to validate estimates or explore alternative approaches.
Execution Reliability Delivers work predictably within committed timelines and maintains a high bar for quality.
Progress Communication Communicates progress, risks, and dependencies clearly and proactively to the team and stakeholders.
Issue Management Anticipates potential blockers and addresses them early; escalates risks with context and proposed options.

Team Collaboration & Growth Track

Key Areas Expected Responsibilities
Team Collaboration Collaborates effectively across the team and contributes constructively to technical discussions and decision-making.
Code Review Contribution Performs thoughtful code reviews focused on correctness, maintainability, and scalability; uses AI to strengthen review quality.
Mentorship (Informal) Supports SE-I engineers through guidance, feedback, and pairing when required.
Knowledge Sharing Shares patterns, learnings, tools, and effective AI usage practices to raise team capability.
Continuous Learning Continuously improves technical depth and AI usage patterns and applies learnings directly to project work.

Client Awareness & Professionalism Track

Key Areas Expected Responsibilities
Client Context Awareness Understands client goals, constraints, and success criteria and aligns technical decisions accordingly.
Professional Communication Communicates clearly and confidently in client interactions with minimal supervision.
Feedback Handling Interprets client feedback accurately and translates it into actionable technical changes.
Delivery Readiness Ensures features delivered are production-ready, tested, and aligned with client expectations and timelines.