Software Engineer, Visualization and Interfaces

The company:

3DM Devices designs and manufactures sophisticated 3D laser scanning systems used in a variety of industries for demanding applications in factory automation and process control. Our systems range from simple width measuring gages with a single number display, to multi scanner profiling systems operating at up to KHz rates in critical measurement applications. These systems operate 24 hours per day in production environments with a proven track record for minimum downtime, ease of use, reliable operation and cost effectiveness. For more information, visit our web site at

The opportunity:

We design, develop, and manufacture the hardware, embedded software and Windows host applications for calibration, support and operation of these sensors. As part of a small dedicated multidisciplinary team, you will take ownership of some of the major software components that interface these hardware systems to end users via GUI applications or to other computer systems via real time data pipes for analysis, archiving and system control functions. As a senior member of the team you will participate in the architecture and design of new systems. You will also have the opportunity to mentor more junior software developers. We are a small and flexible team able to tailor the position to fit the skillset of the right candidate.

We are in the process of developing a new suite of reporting and graphical tools that will most likely involve browser-based solutions such as React and PHP in addition to hosting software such as Apache and IIS and relational databases.

– B.Sc. in Computing Science, Software Engineering, or equivalent education.

– Strong knowledge of object-oriented design and development.

– Strong knowledge of C++, including templates and the STL.

– Excellent communications skills in English (spoken and written), including documentation.


Experience directly relevant to many of the following:

– Windows application development using Microsoft Visual Studio (2015 or later preferred).

– Database design

– UI and UX design using web tools such as React and Javascipt

– Graphing and charting

– Windows GUI application development using MFC.


– Windows sockets, both TCP and UDP, for time-sensitive / “real-time” control and data streaming.

– Memory management, latency management, synchronization and contention in multithreaded native applications.

– Issues and techniques of real time processing and hardware interfaces.

– 3d modeling, 3d graphics, projective geometry, camera calibration techniques.

– Machine vision and image processing application development.

Working for us:

We are located in Aldergrove in the Fraser Valley, where life is calmer, housing is still affordable, and true work-life balance is achievable. There is also a company subsidized van operating daily between downtown Vancouver and 3DM via the Port Mann Bridge, for those who prefer to commute.

This position will require in office time, with option for some remote work. We are sure to provide a safe and healthy environment and employee safety is a priority

We offer:

– Competitive salary plus generous medical and dental benefits plan.

– 37.5 hour work week.

– True flex time: bank hours you work overtime to take off at a later date.

– Flexible schedule, subject to meeting the professional responsibilities of the job.

– An office – not a cubicle.

Please submit your resume to