View all jobs C++ Developer (POS / CMA Solutions, Loyalty & Business Flows) Toronto, ON, Canada Apply Now 5 days Onsite
Must-Have Qualifications
5+ years professional C++ (C++11/14/17), Standard Template Library (STL), Resource Acquisition Is Initialization (RAII), templates, exceptions; strong debugging and performance tuning.
POS domain expertise with CMA/NCR OmniPOS (or similar): configuration, extension, APIs, scripting/plug-ins, troubleshooting.
Business flow understanding : transaction lifecycle, promotions/discount engines, tax, returns/exchanges, tender orchestration, reconciliation.
Loyalty experience : identification (barcode, phone, card, token), points accrual/redemption, earn/burn rules, stackability with offers, breakage handling, edge cases (split tenders, offline accrual).
Concurrency & performance : threads, async I/O, synchronization primitives; profiling tools (e.g., valgrind, perf).
OS & tooling : Windows and/or Linux, build systems (CMake/Make/MSBuild), Bitbucket; debuggers (Visual Studio, gdb/lldb).
Device integration : OPOS/JPOS, serial/USB/network peripherals; driver SDKs and state recovery strategies.
Testing : unit/integration tests (GoogleTest/Catch2), mocks/stubs, automated builds.
Nice-to-Have Skills
Payments: EMV/contactless, PSP integrations, tokenization, partial auth and fallback logic, settlement/reconciliation workflows.
Retail back office: price/PLU updates, item master sync, promotions distribution, store-to-HQ messaging, inventory adjustments.
Distributed/edge systems: store servers, offline-first patterns, eventual consistency, conflict resolution.
Adjacent languages: Python, C#/.NET, Java for tooling/bridges.
Observability: structured logging, metrics, tracing (OpenTelemetry), log aggregation (Splunk/ELK).
Security: static analysis (clang-tidy/sonar), supply chain hygiene, secrets management.
DevOps: Docker, CI/CD (Azure DevOps/GitHub Actions), artifact management.
UI experience: Win32/MFC/Qt or web-based POS front ends integrated with C++ services.