Principal Software Architect (onsite)

Brainpower360

Vancouver

On-site

CAD 120,000 - 180,000

Full time

31 hours ago
Be an early applicant

Get more replies from employers

Send a job-specific resume in minutes.

Job summary

Brainpower360 seeks a senior software design and stability expert to lead architectural decisions and improve system reliability. You will drive root-cause analysis for complex defects, quantify and reduce technical debt, and design backward-compatible redesigns with migration strategies.

You will also build in-house static-analysis rules and govern CI/CD quality gates. The role requires extensive hands-on development in C#/.NET and modern C++ with leadership experience, plus the ability to

Qualifications

  • Bachelor's degree (BS) or higher in Computer Science, Software Engineering, or related field
  • Master's degree (MS), Ph.D. — preferred
  • 15+ years hands-on software development experience
  • 5+ years in architecture/technical-lead role
  • 3+ years managing an engineering team (5+ engineers)
  • Expert-level C# with .NET and async programming
  • Hands-on modern C++ (11+) experience
  • Interoperability experience between C# and C++ is a plus

Responsibilities

  • Identify architectural anti-patterns and perform root-cause analysis
  • Trace root causes of defects like performance issues, memory leaks, and concurrency bugs
  • Quantify technical debt and build risk-prioritized improvement roadmap
  • Propose actionable redesigns with backward compatibility and migration strategy
  • Develop in-house static-analysis rules and integrate into CI
  • Set up tiered severity gates in the build process
  • Establish system-wide quality standards for memory safety and resource disposal
  • Maintain Architecture Decision Records (ADRs) and technical docs
  • Report risks and progress to executives and other departments

Skills

Software architecture
Technical leadership
Programming languages
Root-cause analysis
CI/CD
Memory management
Cross-language interoperability
Documentation

Education

Bachelor's degree in Computer Science or related
Master's degree preferred
PhD preferred

Tools

C#/.NET
C++ (11+), RAII
LINQ & async/await
P/Invoke / C++/CLI

Job description

1. Software Design Defect Analysis & Resolution
  • Identify architectural anti-patterns in existing codebases and perform root-cause analysis
  • Trace root causes of hard-to-reproduce defects such as performance degradation, memory leaks, and concurrency bugs (race conditions, deadlocks)
  • Quantify technical debt in legacy systems and build a risk-prioritized improvement roadmap
  • Propose actionable redesign solutions — including backward-compatibility and migration strategy — rather than purely theoretical proposal
2. Design & Management of Software Stability Assurance System
  • Develop in-house static-analysis diagnostic rules and integrate them into the CI pipeline
  • Design tiered severity quality gates and enforce them in the build process
  • Design suppression/waiver governance policy — format validation, deadline management, and automatic severity escalation upon deadline expiration
  • Establish system-level quality standards for memory safety, exception-handling consistency, and resource-disposal pattern
  • Establish post-mortem processes based on log/dump analysis following incident
3. Technical Problem Analysis, Design & Management
  • Break down cross-team technical challenges, define design direction, and manage assigned engineers' progress
  • Operate code/design review processes and give final approval on technical decision
  • Maintain technical documentation systems such as Architecture Decision Records (ADRs)
  • Report technical risks and progress status to executives and other department
Required Qualification
Education
  • Bachelor's degree (BS) or higher in Computer Science, Software Engineering, or a related field - require
  • Master's degree (MS), Ph.D. — preferred
Experience
  • 15+ years of hands-on software development experience, including 5+ years in an architecture/technical-lead role
  • 3+ years managing an engineering team (team size of 5 or more
  • Experience leading technical evaluation
  • C#: Expert-level with .NET (Framework/Core/5+), asynchronous programming (async/await, Task), LINQ, and memory management (including GC tuning
  • C++: Hands-on experience with modern C++ (11 and later), RAII, smart pointers, and template metaprogramming
  • Interoperability experience between the two languages (P/Invoke, C++/CLI, etc.) — preferred
System-Level Understanding
  • File I/O: File-system structure, buffering/caching strategies, performance characteristics of large-file processing, file locking and concurrent-access control
  • Database (covering RDB / NoSQL / File-based DB): Understanding of internal behavior, consistency models, and integration with query engine
  • OS: Process/thread models, memory management, kernel/user-mode transitions, and platform differences between Windows and Linux
Quality & Design Competence
  • Experience developing or customizing static-analysis tool
  • Deep understanding and practical application of design and architecture patterns (Layered, Hexagonal, Event-Driven, etc.)
  • Experience designing CI/CD pipelines and building quality gate
  • Experience automating test design/structuring — distinct from test-execution automation — including identifying test targets, generating test scaffolding, and managing coverage
  • Experience identifying technical debt through code review and formulating refactoring strategy
Communication
  • Business-level English (capable of documentation, video conference, and technical discussion
  • Ability to explain technical content to non-technical stakeholder
Preferred Qualification
  • Domain experience in industrial automation, Manufacturing Execution Systems (MES), semiconductor/electronics equipment, or robotic
  • Experience leading gradual migration/modernization projects for large-scale legacy system
  • Experience using and driving team adoption of AI coding assistants (Claude Code, GitHub Copilot, etc.)
  • Contributions to open-source static-analysis tools, or experience distributing internally developed tooling
  • Experience working with multinational team
Get your free, confidential resume review.
or drag and drop your file here.
Similar jobs

Similar jobs worth comparing

KYRC Principal Software Architect
KYRC Principal Software Architect

Koh Young Technology, Inc. • Vancouver

On-site
CAD 180,000 - 230,000
Senior Software Designer
Senior Software Designer

Artech L.L.C. • Montreal (administrative region)

On-site
CAD 110,000 - 180,000
Solution Architect – Solution Architecture Advisor
Solution Architect – Solution Architecture Advisor

Jobtailor • Quebec

On-site
CAD 110,000 - 180,000
Staff DevOps Architect, Software Quality Automation
Staff DevOps Architect, Software Quality Automation

Jobtailor • Markham

On-site
CAD 160,000 - 230,000
Systems Architect
Systems Architect

Jobtailor • Quebec

On-site
CAD 90,000 - 120,000
RQ08780 - Software Developer - Senior
RQ08780 - Software Developer - Senior

Rubicon Path • Toronto

On-site
CAD 80,000 - 120,000
Principal Software Architect: Systems Stability & Strategy
Principal Software Architect: Systems Stability & Strategy

Brainpower360 • Vancouver

On-site
CAD 120,000 - 180,000
Principal Technology Architect - QA
Principal Technology Architect - QA

Precisely • Canada

On-site
CAD 130,000 - 160,000
Solution Architect -Security & API Infrastructure
Solution Architect -Security & API Infrastructure

Astra-North Infoteck Inc. ~ Conquering today’s challenges, achieving tomorrow’s vision! • Toronto

Hybrid
CAD 140,000 - 180,000
Senior Software Engineer
Senior Software Engineer

Insight Global • Southwestern Ontario

On-site
CAD 75,000 - 100,000