17 Aug
|
Koh Young Technology
|
British Columbia
17 Aug
Koh Young Technology
British Columbia
We are hiring a principal-level engineer to diagnose structural flaws in existing software architecture, design systems that guarantee long-term stability and quality, and lead the engineering organization.
1. Principal Software Architect
[Key Responsibilities]
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 proposals
2. Design & Management of Software Stability Assurance Systems
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 patterns
Establish post-mortem processes based on log/dump analysis following incidents
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 decisions
Maintain technical documentation systems such as Architecture Decision Records (ADRs)
Report technical risks and progress status to executives and other departments
[Required Qualification]
Education
Bachelor's degree (BS) or higher in Computer Science, Software Engineering, or a related field - required
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 up-to-date 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 engines
OS: Process/thread models, memory management, kernel/user-mode transitions, and platform differences between Windows and Linux
Quality & Design Competency
Experience developing or customizing static-analysis tools
Deep understanding and practical application of design and architecture patterns (Layered, Hexagonal, Event-Driven, etc.)
Experience designing CI/CD pipelines and building quality gates
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 stakeholders
[Preferred Qualification]
Domain experience in industrial automation, Manufacturing Execution Systems (MES), semiconductor/electronics equipment, or robotics
Experience leading gradual migration/modernization projects for large-scale legacy system
Experience using and driving team adoption of AI coding assitants (Claude Code, GitHub, Gopiolt, etc)
Contributions to open-source static-analystis tools, or experience distributing internally developed tooling
Experience working with multinational teams
#J-18808-Ljbffr
📌 KYRC Principal Software Architect (British Columbia)
🏢 Koh Young Technology
📍 British Columbia