About the role
- Strong product development experience and knowledge of product development processes.
- Ability to own and lead different product feature areas from requirements through release.
- Ability to work across parallel release cycles while managing team execution and delivery risks.
- Strong communication skills to interact with stakeholders, clarify requirements, and drive alignment.
- Ability to collaborate with teams across different geographical locations and time zones.
- Hands-on experience with Microsoft .NET development platform and related technologies.
- Knowledge of AWS cloud services is preferred.
- Full-stack .NET development experience with interest in system integrations and data exchange techniques.
- Knowledge of ERP systems, business processes, microservices architecture, and event-driven design is preferred.
- Familiarity with security best practices including OWASP guidelines, secure coding, authentication, and authorization frameworks such as OAuth, SAML, and JWT.
- Comfortable in agile development environments with adaptability to evolving requirements and timelines.
A Typical Day in the Life Includes:Engineering Delivery and Technical Execution
- Design, develop, enhance, and maintain product features and components across the application stack.
- Translate high-level design into low-level design, implementation plans, impact analysis, and task estimates.
- Write comprehensive unit tests and support automated testing practices to improve code quality.
- Perform code walkthroughs and reviews to ensure code paths are covered, dead code is removed, and implementation aligns with specifications.
- Ensure sufficient instrumentation, logging, and diagnostics are built into the code for supportability and debugging.
- Run performance tests, optimize code, eliminate memory leaks, and improve scalability of critical workflows.
- Assist in CI/CD pipeline activities and ensure product builds are stable and release-ready.
- Debug and fix defects identified during development, testing, production support, and customer issue investigation.
- Partner with Support teams on issue diagnosis, root-cause analysis, workaround identification, and permanent resolution.
Team Management and People Leadership
- Provide day-to-day technical direction to engineers, helping the team prioritize work, remove blockers, and maintain steady delivery progress.
- Support sprint planning, backlog refinement, task breakdown, and execution tracking in collaboration with the manager, product owner, and scrum team.
- Monitor development progress, identify delivery risks early, and escalate issues with clear context, options, and recommendations.
- Promote engineering discipline across the team by encouraging strong design reviews, code quality, test coverage, documentation, and operational readiness.
- Create an inclusive and collaborative team environment where engineers can ask questions, share knowledge, and contribute effectively.
- Help onboard new team members by explaining product architecture, development practices, release processes, and domain context.
- Lead technical discussions for assigned feature areas, including architecture choices, integration patterns, API contracts, data flow, security considerations, and scalability needs.
- Guide the team in applying design patterns, microservices principles, event-driven design, secure coding practices, and cloud-native engineering standards.
- Evaluate technical trade-offs and recommend pragmatic solutions that balance maintainability, performance, security, timelines, and business priorities.
- Own quality gates for assigned modules, including design completeness, code review readiness, testability, observability, deployment readiness, and support handover.
- Drive technical debt identification and remediation plans while ensuring ongoing feature delivery is not compromised.
- Stay hands-on with development and troubleshooting, especially in complex, high-risk, or cross-component areas.
Mentoring and Capability Building
- Mentor engineers through design reviews, code reviews, debugging sessions, and structured knowledge-sharing discussions.
- Help junior and mid-level engineers improve estimation, problem decomposition, coding standards, testing habits, and ownership mindset.
- Encourage reuse of common components, shared engineering practices, and consistent documentation across the team.
- Provide timely, constructive technical feedback to help team members improve delivery quality and engineering maturity.
- Identify skill gaps and recommend learning opportunities related to .NET, AWS cloud services, integrations, security, performance, and AI-enabled product capabilities.
Project Ownership and Delivery Accountability
- Own end-to-end delivery of assigned initiatives, features, or technical workstreams from requirements clarification through design, build, testing, release, and post-release support.
- Ensure scope, dependencies, assumptions, risks, and acceptance criteria are understood before implementation starts.
- Coordinate with QA, DevOps, Support, Product Management, Architecture, Security, and dependent engineering teams to ensure smooth delivery.
- Track commitments, communicate progress periodically, and ensure stakeholders have visibility into status, risks, and mitigation plans.
- Support release readiness activities, including build validation, deployment checks, defect triage, production monitoring, and rollback or recovery planning where applicable.
- Drive root-cause analysis for recurring defects or production issues and convert findings into preventive engineering improvements.
Stakeholder Management and Communication
- Engage with business stakeholders, product owners, architects, support teams, and cross-functional engineering teams to clarify requirements and align on implementation approach.
- Communicate technical decisions, risks, trade-offs, and delivery status clearly to both technical and non-technical audiences.
- Represent the engineering team in design discussions, sprint ceremonies, release discussions, issue triage, and customer-impact analysis as required.
- Escalate deviations from specifications, design assumptions, UI mockups, timelines, or quality expectations with proposed resolution options.
- Ensure team documentation, design notes, release notes, and support handover information are accurate and maintained.
Basic Qualifications:
- Hands-on Microsoft .NET development experience, including C#, ASP.NET, .NET Core, Web API, web services, and related frameworks.
- Experience with SQL Server, XML standards, JavaScript/JQuery, API integration, and service-based application development.
- Good understanding of design patterns, SOLID principles, clean code practices, and maintainable application architecture.
- Experience with Git-based configuration management and modern development workflows.
- Good understanding of AWS cloud technologies such as Lambda, Step Functions, SQS, Textract, Bedrock, and related cloud services.
- Experience with microservices architecture, event-driven systems, distributed processing, performance optimization, scalability, and observability.
- Good understanding of Python and machine learning concepts is preferred.
- Good to have experience with Generative AI technologies, including frameworks such as TensorFlow, PyTorch, or Hugging Face, and integration of AI/ML models into software applications.
- Knowledge of ERP systems, document processing, system integrations, and business workflows is preferred.
Preferred Qualifications:Leadership Expectations
- Ownership mindset: Takes accountability for outcomes, not just assigned tasks, and follows through until issues are resolved.
- Execution discipline: Balances technical quality with delivery timelines and keeps the team focused on priorities.
- Decision quality: Makes practical engineering decisions using data, technical judgment, and stakeholder context.
- Coaching orientation: Invests time in mentoring team members and raising overall team capability.
- Collaboration: Works effectively across functions, locations, and release cycles while maintaining transparency.
- Operational readiness: Ensures features are supportable, observable, secure, scalable, and production-ready.
- Continuous improvement: Identifies recurring problems and drives improvements in process, architecture, automation, and engineering practices.
- Bachelor’s degree in a technical discipline or equivalent practical experience.
- Minimum of 4 years of software development experience, with demonstrated ability to lead feature areas or technical workstreams.
- Strong hands-on technical capability with Microsoft .NET, cloud services, APIs, integrations, and modern engineering practices.
- Good communication skills and ability to work with multiple teams, geographies, and stakeholder groups.
- Proven ability to mentor engineers, review designs, guide implementation, and improve technical quality.
- Good team player with a collaborative approach and willingness to support team members during critical delivery or production issues.
- Ability to manage ambiguity, clarify requirements, break down complex work, and drive execution in agile environments.
- Strong customer and product mindset, with focus on quality, maintainability, performance, security, and supportability.
- Feature work is delivered with clear ownership, predictable execution, and minimal avoidable rework.
- Code quality, test coverage, documentation, observability, and support readiness improve across assigned areas.
- Team members receive timely guidance, blockers are addressed quickly, and engineering practices become more consistent.
- Stakeholders receive clear communication on progress, risks, dependencies, and technical trade-offs.
- Production issues, recurring defects, and technical debt are actively analyzed and converted into improvement actions.