Logo for THRILLWORKS

Software Engineer

Role overview

Qualifications

  • Proficient with Bluetooth Low Energy (BLE): GATT, characteristics/services, and connection lifecycle management
  • Production Flutter/Dart development
  • 5+ years of professional software engineering experience
  • iOS development experience is preferred

Responsibilities

  • Own the end-to-end integration of two new hardware devices into the existing Flutter application
  • Drive automated test coverage on every new communication and security code path to 95%+
  • Audit and resolve performance and reliability issues that span the stack
  • Produce documentation that becomes the reference for device communication protocols

About the company

THRILLWORKS logo

THRILLWORKS

For over 20 years, Thrillworks has built lasting relationships with some of the world’s most respected organizations- accelerating the way we unlock and realize the potential of technology to drive growth. We collaboratively pinpoint the specific systems, processes, and technologies holding back an organization's growth. And then we develop the right technology solution, optimized for customer experience, to achieve the goals, impact and ROI needed. The solution could be any digital product—websites, apps, AI and IoT that we build, modernize and optimize. For us that’s the thrill.

Company details

Company size51 - 200

Your match analysis

See how your profile stacks up against this role.

We compared the job requirements to your profile to show where you're strong and where you fall short.

Job description

What is the opportunity?

We're looking for an engineer to teach our Flutter app how to talk — securely, reliably, and in real time — to two
brand-new pieces of hardware, in an environment where a dropped BLE packet isn't an inconvenience, it's a
failure.
This role sits at the intersection of mobile software and embedded systems. You'll need to be equally comfortable
extending Flutter architecture and reasoning about what happens when a BLE packet drops mid-transmission, or
how to securely pair and authenticate with a new device. You'll work inside a large, cross-functional team with
dedicated QA, requirements, engineering, project management, and product functions, so clear communication
and documentation are as much a part of the job as the code.


What will you achieve?

  • The Big Project: You will own the end-to-end integration of two new hardware devices into our existing
    Flutter application — defining the message protocols, extending our BLE communication library, and
    implementing each device's pre-designed security layer (pairing, authentication, encrypted data exchange)
    from spec to shipped feature.
  • The Reliability Bar: You will own automated test coverage on every new communication and security
    code path, driving it to 95%+ and giving you the autonomy to decide how you prove out the hard-to-test
    cases: dropped packets, race conditions, and hardware-in-the-loop failure modes.
  • The Cross-Layer Debug: You will audit and resolve performance and reliability issues that span the stack
    — application code, mobile OS BLE stacks, and firmware — root-causing intermittent bugs that don't
    respect layer boundaries.
  • The Knowledge Base: You will produce the documentation that becomes the reference for how our devices
    talk to our app: protocols, security implementation, library APIs, and t


What do you need for this role?

To succeed in these challenges, you must be proficient with:

  • Bluetooth Low Energy (BLE): GATT, characteristics/services, and connection lifecycle management
  • Production Flutter/Dart development
  • Designing or maintaining a communication library or custom protocol (message framing, serialization, error
    handling)
  • Implementing security for BLE or other embedded communications (pairing/bonding, authentication,
    encryption)
  • Software design patterns that keep systems modular, testable, and extensible
  • Performance profiling and optimization on mobile and/or embedded systems
  • Debugging across multiple layers of a stack (application, OS-level BLE, hardware/firmware)
  • Writing automated tests (unit, integration, hardware-in-the-loop where applicable) to a 95%+ coverage
    standard.

Also required: 5+ years of professional software engineering experience. iOS development experience is
preferred, as the application's primary platform focus is iOS.



Bonus Points:

  • Embedded firmware development experience, or direct collaboration with firmware engineers
  • Familiarity with mobile platform BLE stacks beneath Flutter's plugin layer — particularly iOS Core
    Bluetooth (Android Bluetooth APIs a plus)
  • Background in medical devices, industrial equipment, or other regulated/safety-critical hardware domains


Who are you?

  • Rigor: You treat “it works on my machine” as an unfinished sentence. When failure isn't an option, you
    don't ship until it's proven — with tests, not hope.
  • Systems Thinking: You move fluidly between app code, OS-level BLE stacks, and firmware. “Not my
    layer” isn't in your vocabulary when you're chasing a bug.
  • Clear Communication: You document as you build, because you know the next engineer to touch this code
    won't have you in the room to explain it.
  • Tenacity: Intermittent bugs three layers deep don't scare you off. You don't need your hand held — you find
    the way through.


What does the hiring process look like?

  1. Screening Interview. This initial discussion with HR covers your background and salary expectations, while specifically assessing your communication style and self-discipline for an environment like ours.
  2. Hiring Manager Interview. This step digs into the core capabilities of the role to ensure you have the required experience, and may include specific technical questions depending on the position.
  3. Team & Values Interview. You will meet with potential cross-functional colleagues to assess your collaborative style and ensure you align with the team's values.
  4. Background & Reference Checks. We verify employment history and performance with your provided references after a successful final interview, as well as a Criminal Background Check and Global Sanctions Check.


What do we offer?

We support our team with a robust total rewards package that prioritizes your health, future, and work-life balance starting on your very first day.

  • 100% Employer-Paid Premiums. We cover the full cost of your Health and Dental premiums (Long Term Disability premiums are employee-paid).
  • Comprehensive Health Benefits (Day 1). Full coverage starts immediately, including 100% Prescription Drug Coverage and Extended Healthcare, 80% Dental, Vision Care, Life Insurance, AD&D, and Critical Illness.
  • Paramedical Support. We cover up to $500 per practitioner, per person (e.g., Massage, Physio, Chiro).
  • Flexible Wellness. A $1,200 annual Health/Wellness Spending Account (HSA/WSA) to support your specific needs.
  • Time Off. 3 weeks vacation (minimum), 5 paid sick days, and paid leave for bereavement and jury duty.
  • Financial Future. Competitive pay and a Group RRSP (GRSP) with 2.5% employer matching (1-year vesting schedule).



Why join?

At Thrillworks, we are partners in digital acceleration. In essence, we work together to accelerate the journey toward a competitive advantage for our clients and ourselves by solving the right problems. Regardless of the department you belong to at Thrillworks, you will have a hand in the vision and realization of innovative ideas and high-quality outputs.


Clarity and autonomy. We want all of our employees to feel involved. That means ensuring everyone knows what we are working on and why; creating space for idea-sharing and creativity, and allowing people to make decisions without the constant need for approval. 


Challenges and growth. At Thrillworks, we know our people are our biggest asset, and we do everything we can to make them feel recognized, heard and appreciated. Under the guidance of a supportive and patient manager, you will have the chance to build out your insights, gain exposure internally and externally, and grow your expertise.


With everything we do, these are our guiding values:

Teamwork: We are heading in the same direction, acting and working as ONE.

Curiosity: We are open-minded and hungry to improve.

Courage: We aren’t afraid to take chances or to admit (and learn from) mistakes.

Passion: We care about challenges, the outcomes, and our contributions to meeting them. What we do is the product of who we are and how we think. Apply now!


Thrillworks is proud to be an Equal Opportunity Employer. We do not tolerate discrimination of any kind, as we believe in Diversity & Inclusion as a way to build stronger and successful teams. Accommodation is offered to all candidates upon request.


An AI tool may be used to take notes throughout this process.

This posting if for a current vacancy at Thrillworks.


#LI-REMOTE

Apply once. Then go straight to the hiring manager.

After you apply, unlock the direct contact details of the people who actually make the call. A quick follow-up makes you 5x more likely to land an interview.

MR

Marcus Rivera

Chief Revenue Officer

m.rivera@company.com
linkedin.com/in/marcusrivera
Unlocked after you apply
·

Software Engineer Related jobs

Other jobs at THRILLWORKS

Premium

Reach out to the hiring manager directly.

Gain access to the contact details of the hiring managers who actually decide, and reach out to network with them directly. That, plus more when you upgrade:

  • Full match report with fit score and gaps
  • Career diagnostics on how recruiters read you
  • Curated company matches and warm intros
  • 48h early access to new roles

Cancel anytime.