Software Engineer
The Role
FairCom builds high-performance, mission-critical database technology used in demanding enterprise and industrial environments. As a Software Engineer (C/C++), you will work directly on the core of our database and data-management platforms, including FairCom DB, RTG, Edge, and MQ. This is not a maintenance role. You will design, extend, and modernize production database systems that support real-world operations at scale.
You will work closely with Senior Engineers and Architects, helping to evolve long-lived systems, balance performance with correctness, and deliver reliable software our customers depend on every day. If you enjoy deep systems work, understanding how data actually moves through a system, and writing code that must be right—not just fast—this role is for you.
The Day-to-Day
- Build and evolve core database functionality used in production by enterprise and industrial customers
- Work in C/C++ and modern systems languages to deliver correct, fast, and reliable software
- Dive into query execution, indexing, storage, and transaction behavior
- Debug real problems in real systems—not toy services
- Own work end-to-end: design, code, test, ship
- Collaborate with senior engineers who care deeply about engineering craft
- Contribute clear technical documentation that explains design intent, tradeoffs, and operational behavior
- Occasionally participate in an on-call rotation to support enterprise customers in production environments
Requirements
- A formal degree in Computer Science, Software Design, and/or other Bachelor's degree with equivalent on-the-job experience in Software Development
- 4+ years of C/C++ experience
- 4+ years of experience coding in at least one of the following languages: COBOL, Python, Node.js, Java (JDBC), and/or PHP
- Basic understanding of JIRA and Agile methodologies. Sound understanding of how DBMS works as it pertains to SQL (relational) and NoSQL (non-relational) data models
- Must live within commuting distance of a FairCom Office
Preferred Qualifications
- Experience working with IoT / IIoT and Raspberry Pi
- Experience with database internals or data-intensive systems
- Exposure to IoT or industrial systems
- Experience working with embedded platforms or constrained environments
- Internship or early-career experience in SaaS or enterprise software environments