Skip to main content

Senior Software Engineer

Posted today

silicon45Portland (ME)

SENIORITY

Lead

Apply (opens in a new tab)

About the role

The role involves developing the software integration layer between kdb+/q systems and FPGA accelerator runtime libraries to improve end-to-end performance. Key tasks include building low-latency data paths, implementing query offload, and optimizing data movement across CPU and accelerator memory.
Requirements: Candidates need a Bachelor's or Master's degree in a technical field and 5+ years of experience with performance-critical systems and expert C/C++ Linux programming. Proficiency in performance profiling, hardware counters, and integrating software with accelerators like GPUs or FPGAs is required.
Key Skills: C++, Linux Systems Programming, kdb+/q, PCIe/DMA, Performance Engineering, Memory Management, NUMA, FPGA Integration, Python, Git/CI, Data Structures, Algorithms, IPC, Shared Memory, Profiling, Systems Design
Benefits: Equity, Medical Insurance, 401(k)

Before you apply

Applying takes about a minute. These four things decide how fast it moves after that.

Your profile is current

It's what we read first. Occupations, seniority and locations matter more than a long history.

Two examples you can talk through

Not a portfolio — just two pieces of work where you can explain the decisions and what you'd change.

A number in mind

What you're on now and what would make you move. We negotiate better when we know both.

Your notice period

Employers plan around it, and it's the question that stalls offers most often.

Once you apply, someone reads it and calls you before anything reaches the employer — usually within two working days.

More like this