jSonar develops cybersecurity products for the largest companies around the globe. We gather huge amounts of security-related data from in-house systems and various cloud platforms, and analyze it using a variety of tools ranging from Fast Fourier Transforms to Machine Learning algorithms. Because of the specialized nature of the problems we solve, most of the analytics are performed via code we develop in-house.
At the heart of our product lie C++ components that do the heavy lifting; we have a small but dedicated team of C++ developers who lovingly grew its capabilities over the past few years.
For more information about us visit our website (www.jsonar.com) and our company indeed profile (https://ca.indeed.com/cmp/Jsonar-Canada/about)
We’re looking for a few developers to join our team – people as passionate about C/C++ and Linux as we are.
We have a large set of localized tests, end-to-end real-world systems, and integration tests to ensure new code is safe and functional. Our code review procedures are stringent yet friendly; all new code requires test coverage. We employ a continuous integration system that automatically ensures no code will be admitted if it breaks any of the tests.
We enjoy an informal work environment – we’re open to (and respectful of) a variety of personal quirks and coding styles. (One of our crew uses Emacs and lives in the boondocks, while another swears by CLion and doesn’t venture east of Main street; we don’t judge.) As long as your code is clear – and, ideally, beautiful – you can adopt your own style.
Although we use C++ 14, we do not gravitate toward exotic C++ features, unless they are true time savers. (A C developer would also fit nicely into our team.) In our code, we pay special attention to memory management, multithreading, and I/O optimization. Because our users span several time zones, we place special emphasis on logging, status reports and traceability. Last, but not least, we don’t optimize prematurely.
Top five facts about our C++ team:
- We don’t like C++ Exceptions, and we generally don’t use them (although there are exceptions).
- We do like automatic pointers.
- One developer’s code is everybody’s business.
- We think "design patterns" are useful tools, not a coding standard.
- The worst performance sin is unnecessary disk I/O:
There was a developer named Zeke
Many blocks from the disk did he seek
His code caused disorder
‘Cause he scanned out of order
And the query took nearly a week!
If you want to join our C++ A-Team, apply now with your resume and brief cover letter.
This is a full-time position, located in Downtown Vancouver.
Only candidates eligible to work in Canada will be considered.
Job Type: Full-time