Cinnafilm currently has the following position(s) which we are seeking qualified candidates to fill:

Software Engineer


Individual will be working on a research and development team to push the limits in framerate and format conversion algorithms for the broadcast and internet/mobile video industry. Core video and image processing algorithms are primarily developed using C++, CUDA, and OpenMP for high performance computing. We also utilize C# for tools/GUI and Matlab for prototyping. Areas of research will be in motion vector estimation, cut detection, feature recognition and tracking, computer vision, and other video data mining technologies. Individual will also be responsible for application integration and plug-in development.

    Why work for Cinnafilm?

  • Interesting and technically challenging work
  • Live where you want to live, and work where you want to work. We encourage our employees to work remotely (few corporations would allow this). We know that commuting is a waste of time, and that you probably do your best work in the comfort of your own home. Or if you prefer the traditional environment, work from our Albuquerque office.
  • Generous vacations, benefits, stock bonuses
  • Interact with some of the most influential engineers and leaders in the broadcast and movie industry (globally)
  • Professional and respectful work environment.


    Candidates should have a Bachelors degree (or equivalent knowledge) in one of the following:

  • Computer Science
  • Electrical Engineering
  • Computer Engineering
  • Math
  • Must possess strong skills in most of the following categories:

  • Expert C++ programmer. Candidate must know advanced C++ language details, templates, standard template libraries, automatic pointers
  • Software architecture design, using design patterns and object oriented methods to manage complexity when working with large code bases
  • Problem solving and solid math skills, knowledge of calculus and linear algebra
  • Helpful skills

  • Digital Signal Processing (DSP) or image processing, FFT, wavelets, phase correlation, filter design.
  • CUDA experience
  • Experience in high performance computing (pipelining concepts, optimization skills, GPU architecture, CPU architecture, use of performance profiling tools such as VTune and NVIDIA Parallel Nsight)
  • Experience in the following: BOOST, COM, ATL, C#, WCF, MFC, Matlab
  • 3D game engine development
  • Motion vector / optical flow programming.
  • Computer vision programming.
  • Video codec development and/or video standards knowledge.
  • Broadcast video systems programming.
  • Personal Skills

  • Candidate must work well in both a team environment and on their own with remote guidance
  • Candidate must possess the ability to stay focused, have good time management skills, and ability to communicate goals and track results.

If you have any other questions, please contact us at