Careers

We are currently seeking candidates for the following positions:

To apply, please send your cover letter and resume to careers@omsignal.com . Note that only selected candidates will be contacted.

PS: Les CVs en français sont acceptés.
Embedded Systems Engineer

OMsignal is looking for an experienced Embedded Systems Engineer to help us design, implement and test embedded software for OMsignal hardware products.

What you will do:

  • Design and implement embedded software for OMsignal hardware products
  • Develop new embedded frameworks and/or libraries
  • Develop tests to validate the implementation
  • Maintain the software upon release
  • Work with the Technical Support team in resolving field issues
  • Participate in the evaluation of new designs and components for future products

Your qualifications and experience:

  • A university degree in Electrical or Computer Engineering or equivalent experience
  • 10+ years experience in embedded system firmware/software design
  • Fluent in C & Assembler (C++, Python, Perl a plus)
  • Must have knowledge of Embedded Hardware (MSP430 kits, BLE module or similar)
  • Experience in developing with real time operating systems (FreeRTOS or similar)
  • Knowledge of MCU architectures: MSP430, 8051, nRF52, ARM, Cortex
  • Proven experience in analog, digital and serial interfaces
  • Knowledge of Bluetooth Low Energy (BLE) is an asset
  • Knowledge of SPI, I2C is a definite asset
  • Knowledge of hardware design (schematic and PCB layout) is also a definite asset
  • Systematic approach to problem solving, awareness of the implications of a given change
  • Troubleshooting / debugging skills in development and production
  • Familiar with source code management: git/github

Your profile:

  • Passionate and energetic about what you do
  • Self-motivated and resourceful
  • Have strong communicative skills
  • Approach technical challenges with an open mind and desire to innovate
  • Like to build firmware as part of a team
Java/Scala Backend Software Developer

We are looking for a passionate and accomplished senior backend software developer to contribute to the development of our platform. You will work with a great team of developers in a complex and state of the art technical environment. You will develop high-quality software using the latest development best practices such as:

  • Domain Driven Design
  • Command and Query Responsibility Segregation (CQRS)
  • Event Sourcing
  • Reactive, Asynchronous Programming
  • Test Driven Development
  • Continuous integration
  • Functional Programming and Object-Oriented Programming.

We currently use the following technologies:

  • Backend: Scala, Akka, Akka Persistence, Spray, ReactiveMongo, SBT, Kafka, ZooKeeper, InfluxDB (for time series and metrics), and Elastic Search (for monitoring)
  • Web: NodeJS, ReactJS
  • iOS: Swift, Objective C, ReactiveCocoa, Core Bluetooth, CocoaPods
  • DevOps: Ubuntu, Docker, Ruby, Amazon AWS/EC2
  • Source code management: git/github
  • Agile project management: JIRA, Confluence

In terms of our culture, we get some inspiratieon from the Open Source model to achieve high cohesion (within teams) and low coupling (between teams): small, empowered teams, systematic pull requests, developer autonomy.

Your qualifications and experience:

  • We are looking for a talented and experienced software developer who has experience in several software stacks such as Java, Scala, .NET, iOS and NodeJS
  • We are not recruiting based on specific technology experience, but you are expected to be able to quickly contribute to our stack
  • You are also expected to have strong software foundations (Algorithmic, Software Design, OOP, Functional Programming, Database)
  • Knowledge of how to secure a REST API using OAuth is a plus

Your skills:

  • Passionate and energetic about what you do
  • Self-motivated and resourceful
  • Approach technical challenges with an open mind and desire to innovate
  • Appreciate great design and thrive in a creative environment
  • Have strong communicative skills
  • Are flexible and adaptable to both organizational and project-level changes
  • Can operate under tight deadlines
  • Like to build software as part of a team
  • A plus if you use applications to track yourself and life
  • A plus if you practice yoga or other wellbeing practices

Show us what you can do:

If you have a github/bitbucket account, we would love to take a look at what you like doing (if you feel ashamed of it in retrospective, don't worry and instead explain to us what you would now improve).

Site Reliability Engineer

We are looking for a Site Reliability Engineer who can help us operate and scale a reactive, event-driven system based on bleeding edge technologies (Scala, Akka, Spray, Reactive Programming [3], iOS, Swift, Docker...), a modern architectural style (Micro Services, CQRS, Event Sourcing, Eventual Consistency), and a clean codebase (Clean Code, Domain Driven Design…).

We currently use the following technologies:

  • Backend: Scala, Akka, Akka Persistence, Spray, ReactiveMongo, SBT, Kafka, ZooKeeper
  • Web: NodeJS, ReactJS
  • iOS: Swift, Objective C, ReactiveCocoa, Core Bluetooth, CocoaPods
  • DevOps: Ubuntu, Docker, Ruby, Amazon AWS/EC2
  • Source code management: git/github
  • Agile project management: JIRA, Confluence

On the DevOps side of the things, we use Docker and Ruby to automate everything on AWS/EC2. We orchestrate our Docker-ready micro services using an internal Ruby tool that we call OMfleet, based on the ideas of CoreOS's fleet and consul.io. We use InfluxDB for time series and metrics, and Elastic Search for monitoring.

Operational constraints are a first-class citizen in our development process and taking care of them is part of our definition of DONE. In terms of our culture, we get some inspiration from the Open Source model to achieve high cohesion (within teams) and low coupling (between teams): small, empowered teams, systematic pull requests, developer autonomy.

Your qualifications and experience:

  • A university degree in Computer Science or Software Engineering
  • A solid background in networking technologies (e.g., TCP/IP, UDP, HTTP/S, load balancing and reverse proxying, DNS, ssh)
  • Knowledge of how to secure public facing servers and cloud infrastructure
  • Experience using Amazon EC2, DigitalOcean, RackSpace or Microsoft Azure is a plus
  • Experience managing multiple data-centers is a plus
  • Knowledge and interest in Docker, Ruby or Consul is a plus

We are not recruiting based on specific technology experience, but you are expected to be able to quickly contribute

Your skills:

  • Passionate and energetic about what you do
  • Self-motivated and resourceful
  • Approach technical challenges with an open mind and desire to innovate
  • Appreciate great design and thrive in a creative environment
  • Have strong communicative skills
  • Are flexible and adaptable to both organizational and project-level changes
  • Can operate under tight deadlines
  • Like to build software as part of a team
  • A plus if you use applications to track yourself and life
  • A plus if you practice yoga or other wellbeing practices

Show us what you can do:

If you have a github/bitbucket account, we would love to take a look at what you like doing (if you feel ashamed of it in retrospective, don't worry and instead explain to us what you would now improve).