MogiMogiJobsPowered by MobiusEngineLet Mogi apply

OUTCOMES OPERATING INC

Staff Software Engineer, C/C++ (Linux)

3 days ago

Full-time

About the job

Job Details: Salary Range: Undisclosed, Job summary

We are looking for a Staff Software Engineer to build and lead work on the Linux server applications behind our pharmacy software. You will write C and C++ most weeks in a mature codebase of about 2 million lines, and you will lead projects and code reviews across the team.

This is a hands-on individual contributor role, not people management. Our roadmap includes a new web version of Rx30, new integrations, and moving e-prescribing and claims adjudication into central services. You will help shape how those get built and raise the bar for engineering across the team. Healthcare experience is a plus but not required; we will teach you the domain.

Essential duties and responsibilities

Technical leadership

Lead projects from design through release: set technical direction, break down work, size it, and keep it moving across engineering and QA.
Lead code reviews and set the standard for C/C++ quality, safety and performance on the team.
Mentor engineers through reviews, pairing and design discussions.
Contribute to architecture decisions as we move shared functions out of Rx30 into central services.

Software development

Design, build and maintain C and C++ applications and services on Linux.
Work confidently in a large, long-lived codebase: read and change code you didn’t write, refactor carefully, and keep it maintainable.
Build networked services using sockets and TCP, and integrations with outside partners and systems.
Diagnose and fix production problems: crashes, memory leaks, threading bugs and performance issues.

Testing and quality

Write unit, integration and automated tests for positive and negative cases, and coach others on test strategy.
Work with QA to plan regression and performance testing for each project.

Operations

Administer and troubleshoot the Linux environments our software runs in.
Add the logging, monitoring and metrics that keep services dependable, and help improve build and deployment automation.

Security and compliance

Write secure code with a security-first mindset, including correct handling and protection of PHI and PII.
Identify and reduce risks through secure coding practices and threat modeling.

Requirements and design

Work with product and business stakeholders to turn business needs into clear technical stories and designs.
Explain complex technical issues to non-technical audiences.

Qualifications: Requirements

8+ years of professional C and C++ development of applications and services on Linux, including recent hands-on work in your current or most recent role.
Hands-on Linux administration: configuring services, managing users and permissions, reading logs, and troubleshooting servers from the command line.
Strong network programming: sockets, TCP/IP, and building and debugging client/server applications.
Experience working in a large, long-lived codebase (hundreds of thousands to millions of lines) with many contributors.
Skill with Linux debugging and analysis tools such as gdb, Valgrind or sanitizers, strace, and tcpdump.
Experience leading technical projects and code reviews as an individual contributor, and mentoring other engineers.
Solid grasp of design patterns, software architecture and multithreaded programming.
Clear communication with both technical and non-technical stakeholders.

This role is not a fit for experience that is mainly embedded, firmware, microcontroller or device-driver development.

Nice to have

Healthcare or pharmacy software experience, especially handling PHI/PII under HIPAA.
Familiarity with pharmacy claims and adjudication, e-prescribing, NCPDP standards, or long-term care pharmacy.
Experience with relational databases, web services and integrating with outside partners.
Experience with CI/CD pipelines, containers or infrastructure as code.

Education and experience

10+ years of professional software development experience.
Bachelor’s degree in Computer Science, Computer Engineering, Electrical Engineering, Information Systems or IT, or equivalent work experience.