- Salary
- $85 – $92
- Location
- Toronto
- Workplace
- Hybrid, Onsite
- Type
- Contract
- Department
- IT
- Seniority
- Senior
- Experience
- 5+ years
- Source
- PCRecruiter
Description
Request: 109173-1
Start/End Dates: 11/23/2026 - 5/22/2027
Work Location: downtown Toronto, near TTC and GO
Job Title: Specialty Developer - Senior (Front End Developer)
Position Title: Senior Front End Developer (Angular)
Line of Business: Global Asset management
Target rate range: $85-92hr B2B
Target Start Date: Nov 23, 2026
Duration: 6 months
Potential for this contract to be extended or converted to FTE? Extension YES - FTE YES
Hybrid work - onsite Monday's plus 1st Friday of each month - likely Mon + Tues in Jan 2027
Office Location: 81 Bay St Toronto
Work Schedule (hours per week, start time): 37.5 Hours/week, 9-5 Monday to Friday
Potential for OT? No
What does the LOB do?: Global Asset management
Reason the role is open? MOP funded Activity F27
What project will this contractor be working on? MOP funded Activity F27
Highlights of the role; why would someone choose this role over another?: Highlights of the role; why would someone choose this role over another?: opportunity to modernize and influence technology decisions
- Currently running some legacy Angular apps, structured from Bootstrap starter kit. Most moved over to Angular 17; problem is that the starter kit is coupled with Metronic. They want to 'write out' the dependency on Metronic so they can upgrade to Angular 21. Expect that it will extend beyond 6 months.
- Very strong Angular experience: knowledge of components, dependencies, some back end, routing, really will be working on a generic UI project,
Who Will the Candidate Be Working with on a Daily Basis?: GAM team members
What is the % of time the CW will spend working with stakeholders?: 10%
How many years of experience? 5+ year
Job Description:
About the Role
We're modernizing the front-end architecture across our Angular application portfolio. We need a front-end engineer who can lead the effort to extract and decouple our shared layout, navigation, and theming from Metronic, repackaging it as an internally owned, versioned component library that can be consumed across multiple applications - without losing the existing look, feel, and UX consistency teams rely on.
This role includes: part library/design-system engineering, part large-scale migration planning, part hands-on Angular upgrade work.
Responsibilities
• Audit current Metronic usage (_metronic/layout, partials, shared, kt widgets, jQuery-based behaviors) across applications to identify what's template boilerplate vs. app-specific customization.
• Design and build an in-house shared Angular library (e.g., Nx workspace, Angular library/secondary entry points, or npm-packaged component library) encapsulating navigation, theming, and layout shell, publishable/versioned for reuse across multiple apps.
• Define a migration path off direct Metronic dependency while preserving existing UX, or plan/execute a controlled upgrade to newer Metronic releases (which use Tailwind CSS instead of Bootstrap) - evaluating a Bootstrap-to-Tailwind transition where needed.
• Remove or replace legacy jQuery-based template scripting with native Angular component/directive equivalents.
• Establish a strategy for unblocking Angular version upgrades
• Collaborate with teams owning the other affected applications to coordinate a phased, low-disruption rollout of the shared library.
• Set up tooling for component documentation, visual regression testing, and versioning/release of the shared library (e.g., Storybook, semantic-release, private npm/Azure Artifacts feed).
• Partner with design to ensure the extracted theme/layout remains visually consistent and themeable (light/dark, branding) across apps.
• Write migration guides and support application teams adopting the new shared library.
Required Qualifications
• 5+ years of professional Angular development experience, including Angular upgrade/migration work (e.g., major version upgrades, Angular Update Guide usage).
• Strong knowledge of Bootstrap 5 and practical experience with Tailwind CSS, potentially including migrating UI styling between CSS frameworks.
• Experience de-risking dependency on third-party admin templates/themes (Metronic, AdminLTE, CoreUI, or similar) in production apps.
• Solid understanding of removing jQuery/legacy DOM-manipulation patterns in favor of idiomatic Angular (component-driven, reactive) approaches.
• Experience versioning and distributing internal packages via a private registry (npm, Azure Artifacts, GitHub Packages).
• Familiarity with Azure DevOps/GitHub Actions CI/CD for publishing and consuming shared packages across multiple repositories.
• Experience with incremental/parallel migration strategies (feature flags, strangler pattern) for rolling changes out across multiple live applications without big-bang rewrites.
Preferred Qualifications
• Prior experience specifically with Metronic (Bootstrap and/or Tailwind editions).
• Experience building internal design systems or component libraries adopted by multiple product teams.
• Experience with Kendo UI Angular components (used alongside the current template).
• Background in enterprise/regulated environments (financial services) with multiple coordinated Angular applications.
• Exposure to Azure AD/MSAL-based authentication flows in Angular apps.
What Success Looks Like
• A reusable, independently versioned 'app shell' library (navigation, layout, theming) consumed by 10+ applications.
• A documented, repeatable path for applications to upgrade Angular versions without being blocked by template dependencies.
• Reduced coupling to Metronic's release cycle and a clear decision/migration path for the Bootstrap to Tailwind question.
Must Have Requirements:
• Angular Development
Nice to Have:
• Previous CIBC experience
Soft Skills:
•Attention to detail
• Good work ethic
• Work under pressure
• Patience
NOTE
Close on Nov 2 at 3pm
G.G. Consulting Group uses advanced ATS systems to track and manage candidates and jobs. We do not use AI tools for candidate screening.