Back End (C++) Engineer
Location: San Jose, Costa Rica
What's the Project?
Our customer is a Calgary-based software development company that develops and sells cardiac post-processing software that allows for the evaluation and analysis of MR and CT images. Available for clinical and research use, the stand-alone software provides full DICOM and PACS connectivity.
The customer operates worldwide and its products have been approved for the Canadian, American, Australian, and European markets. The main goal is to contribute to quality in cardiovascular imaging and research while maximizing the achievable benefit for patients by enabling healthcare providers to accurately and effectively analyze cardiovascular images.
The project mission is to shorten the scan and anomaly identification time. A 10-minute scan has the potential to disrupt the market for the diagnosis of CAD by offering a non-invasive diagnostic test that is fast, accurate, safe and easy to use. The customer is seeking one web application software developer. The software developer will design and develop various components of the software including application graphical user interface/workflows, reporting, post processing algorithms. Through the software development cycle, the software developer will work closely with other software developers and quality assurance analysts as a team to ensure delivery of quality software products.
You Perfectly Match If you have:
- 5+ years of industry experience in C++ development (C++11 or later)
- Strong understanding of object-oriented programming and design pattern
- Experience in designing and deploying large scale distributed system, and server/client architecture
- Database skills including schemas and ORMs
- Experience with REST API design
- Familiar with Git or other version control tools
- Experience with Agile software development methodology
- Disciplined approach to testing and ensuring quality delivery
- B.Sc. degree in Computer Science/Software Engineering or related technical field, or equivalent experience
- Proficiency/Advanced in written and spoken English
Nice to have:
- Experience in Go development, or other backend languages like Python
- Knowledge of RabbitMQ, ZeroMQ, or Apache Kafka
- Experience in cloud-based application development
- Proficiency developing with NoSQL database technologies
- Experience with DICOM protocol and images
- Experience in Qt
- Experience with architecture and design (design patterns, reliability and scaling) of new and current systems
Your day-to-day activities:
- Design, develop, test, and deploy the core of our product
- Implement APIs for integrating with web and mobile applications
- Work closely with various teams, including the research, algorithm, and product teams, to deliver the best solutions to our customers and OEM partners
- Analyze and optimize application code for efficiency and performance
- Writing modular and well-organized code in accordance with industry best practices
- Participate in peer reviewing of code and share expertise with other members