Position summary

We’re looking for a creative software engineer, with interest in computer vision and algorithms, with a passion for solving difficult problems, to join the team.

Job Title

Job Title

Job Title

Software Engineer - Algorithms

Software Engineer - Algorithms

Software Engineer - Algorithms

Location

Location

Location

Edinburgh / Remote, UK

Edinburgh / Remote, UK

Edinburgh / Remote, UK

Position

Position

Position

Full time

Full time

Full time

Apply

About the job

The Company

Pommelhorse is a fast growing technology startup based in Edinburgh, founded by experienced entrepreneurs with major prior successes.

We build complex real time video processing technology to transform the experience of video communication between people.

We believe we can make the world a better place by helping people regardless of their geography or personal circumstances to work, learn and contribute at a global level, by building technology accessible to 800-million daily users of video communication today.

Our technology allows people to feel like they’re in the same space as the people they communicate with, without any specialist hardware, headsets or displays, This can be for work, education, and remote services such as healthcare and remote diagnosis.

Using a mixture of hand-crafted vision algorithms and custom made deep-learning models we manipulate live video pixel-by-pixel, in real-time, typically on constrained hardware. We develop the high-value, challenging technologies that help communication platforms and equipment makers make better, more personal, and more productive products.

The Role

We’re looking for a creative software engineer, with interest in computer vision and algorithms, with a passion for solving difficult problems, to join the team. Your work will help transform video communication to a richer and improved experience, positively impacting the 800-million+ daily users of video-calls, and enabling new communication possibilities.

As part of your work, you’ll be often programming in Python and C++, working as part of a team, to implemented algorithm blocks, image signal processing pipelines, and application systems. These blocks and systems are tasked to perform image inferring and understanding, realise traditional computer vision algorithms, machine learning vision systems, depth sensing, various image analysis, detection and segmentation, 3D image data representation, 3D transformation and manipulation, image rendering, and various image generation and filling.

We’re always battling run-time, as we operate on constrained HW, and have to operate in real-time, so the role involves coming up with the solutions to difficult problems while trying to squeeze every last millisecond out of the code.

Responsibilities

  • Implement new algorithms for real-time image manipulation in 2D and 3D, related to matching, hole filling, image stitching, and depth clean-up and estimation, prototyped often in Python with challenging performance requirements

  • Implement algorithms and system components, for real-time operation, often in C++ with a view to using parallelised processing hardware

  • If experienced/interested, sometime implement parts of the system in HW acceleration languages such as Metal and OpenCL

  • Assist and connect various custom made deep-learning based vision sub-blocks, with the assistance of traditional vision algorithms, to build bigger signal processing blocks

  • Help development data augmentation pipelines, and visualisation pipelines for custom image views

  • Help and lead building of proof-of-concept systems of signal processing pipelines, to demonstrate the value of the capabilities for end-users

  • You’ll always be working as part of a team, but depending on your level of experience and seniority, you’ll be given more ownership, and would be expected to support and mentor other members of the team for their personal development or work deliverables

Skills and Experience

You should ideally have some relevant industrial experience, with a Bachelor, Masters or PhD in the field of computer science or software engineering. However, we care more about the skills you’ve developed rather than how you’ve developed them, so we also encourage candidates with the relevant skills who might have had an unconventional career and education history to apply.

Some of the knowledge and skills integral to the role:

  • Strong Python knowledge and in particular Scientific python. e.g, NumPy, Pandas, Matplotlib

  • Experience and comfortable programming in C++, as bonus Objective C, Rust

  • Have at minimum and understanding of GPU/Accelerated-HW design and programming paradigms and ideally some practical experience of programming in Metal, OpenCL, OpenGL, CUDA or SYCL

  • Fundamental programming notions. e.g. Object Oriented, Functional Programming, data types, memory, pointers, compilers, interpreters, etc

  • Familiarity with machine learning frame works. pyTorch and TensorFlow

  • High-level knowledge of signal processing. e.g. Understanding of time domain, frequency domain, Fourier transforms, aliasing, superposition, sample-rate, resolution, dynamic range, noise, etc

  • High-level knowledge of 2D and 3D Image processing fundamentals, e.g. colour spaces, edge detection, feature detection, blurring, 2D transforms, 3D transforms, pose and extrinsic matrices, point-clouds, meshing, 3D rendering approaches, lighting

  • Comfortable at holding larger problems in your head, and trading off different solutions/approaches to a problem with justifiable reason

  • Strong communication skills, enjoy working as part of a team

As reference, we’re looking for someone with about 3-5 years industrial experience. If you’re fresh out of university but feel like you have the skills and interest, please still get in touch. 

We encourage candidates of all different backgrounds and identities to apply. This is a rare opportunity to join a true technology startup at an early stage, and you will have a big part to play in shaping the culture and ethos of the company.

Salary, Benefits and Working Practices

£43,000 to £56,000 annual salary (Dependent on your level of seniority)

5% of salary contribution to pension by company

Stock options, to share in the company’s long-term success

Health insurance

Brand new Apple hardware

Flexible working and working from home, with our office in Leith available for group and face-to-face discussions

Working Rights

The position is open to all candidates with the right to work in the United Kingdom, for example British and Northern Irish citizens, citizens of the European Union with settlement status in the United Kingdom, or all other nationalities with right of work in the United Kingdom.

We are able to sponsor a candidate for a UK Skilled Worker (Tier-2) Visa. We currently only offer sponsorship to candidates which are already in the UK (for example working in a different UK based company on a Visa, or finishing degree)

Location

Edinburgh, but we can be flexible.

The company offices are in Edinburgh. It would be good to be available 1-day a week or a day every other week to come in the office for certain brainstorming and discussions that are easier face-to-face. So, if you’re not too far we can make it work.

How to apply

Please send in your CV or a link to your LinkedIn profile if it’s well populated.

Please also provide some accompanying text, either in an attached cover letter, or in an email, to touch on the following: 

  • Why you’re excited to join a technology startup and why you’re interested in this role

  • Show your experience and passion for computer vision, algorithms, and problem solving

  • Which of the relevant skills outlined above are your strengths today (with evidence)

To apply, send these into:

job221603@pommelhorse.com

We have no hard deadline for this position, we’ll keep it open until we find the right candidate. We’ll try and get back to you regarding your application within 2-weeks of applying.

© Pommelhorse Ltd 2023

387 Easter Road | Edinburgh | EH6 8HU | UK

Company Number SC677903

© Pommelhorse Ltd 2023

387 Easter Road | Edinburgh | EH6 8HU | UK

Company Number SC677903