DevOps / Tooling : GitHub / GitLab, CI / CD pipeline, monitoring tools
Critical Tooling : Feature Flag systems (e.g., LaunchDarkly, proprietary solution)
Key Responsibilities :
Technical Debt Strategy : Collaborate with the team to identify, prioritize, and define the scope of technical debt initiatives (e.g., refactoring brittle components, upgrading dependencies, improving testing coverage, standardizing deployment practices).
Code Modernization : Execute complex refactoring and modernization of existing Next.js codebase to improve readability, performance, and adherence to modern architectural patterns.
System Optimization : Analyze and optimize the performance of our Cloud Run deployments and PostgreSQL queries in Cloud SQL.
Testing and Stability : Implement robust unit, integration, and end-to-end tests to prevent regressions during the debt reduction process.
Safe Deployment : Utilize feature flagging techniques extensively to manage the rollout of substantial code changes, minimizing risk and allowing for rapid rollback if necessary.
Documentation : Create and maintain high-quality documentation for the improved architecture and refactored components.
Required Qualifications :
Experience : 5+ years of professional experience as a Software Engineer, with a significant tenure operating in a Senior capacity.
Next.js Expertise : Deep, hands-on experience developing, deploying, and maintaining production applications using Next.js (preferably with TypeScript).
Cloud Infrastructure : Proven familiarity with deploying and managing containerized applications on GCP, specifically using
Cloud Run
Database Proficiency : Strong working knowledge of PostgreSQL, including performance tuning, schema optimization, and writing efficient SQL queries within a Cloud SQL environment.
Legacy Code Mastery : Demonstrated ability to analyze, debug, and safely modify / improve large, complex, and potentially brittle existing codebases.
Feature Flagging : Extensive practical experience integrating and managing features using feature flags to decouple deployment from release and mitigate risks associated with major architectural changes.