Careers @ Phenix

Become part of the team that makes it happen

Phenix is an exciting and fast-growing high-tech company that is changing how people connect. Our technology revolutionizes real-time content delivery and provides means for human connection in the digital age.

Our headquarters are in Chicago's blossoming technology epicenter in the River North neighborhood, though our team is located around the world. We are always looking for talented people to join our ranks — focused, dedicated, inspired, fun people who are ready to make things happen.

We take pride in how we build our systems, mentor our team members and interact with our customers. We follow the manifesto for agile software development and practice SOLID object-oriented design. Most of us have extensively used many programming languages during our careers. We see programming languages as the means of getting things done, not the essence of what defines us as engineers. We become experts in new technologies not because it is exciting (it is!) but because it enables us to create something better and faster. We strive for end-to-end perfection in delivering flawless features to our customers. A happy customer is the ultimate reward for our time. We are egoless because we believe that everyone can learn something from everyone else.

Open Positions

Performance C++ Engineer

Location:Chicago HQ (preferred) / US or Zurich, Switzerland

Phenix RTS is seeking an experienced real-time C++ Engineer to build high performance components for our low-latency video streaming network. These components will be deployed throughout our network, integrated into our servers, as well as, modern browsers and mobile platforms. As a member of the Phenix RTS team, you will be building the future of video communications.

We Are Looking For Someone Who:

  • Is currently developing high performance, mission-critical real-time systems
  • Is dedicated to creating performant applications
  • Can consistently deliver high quality software in a fast-paced startup environment

Responsibilities:

  • Engineer high performance C++ based software solutions that continually advance the capability of the Phenix RTS real-time streaming engine
  • Use techniques, tools and benchmarking to evaluate performance of C++ based components
  • Communicate clearly and openly with internal stakeholders regarding progress, roadblocks, and timelines

Requirements:

  • MS/BS. Computer Science or a related technical degree preferred
  • High degree of proficiency in C/C++
  • Experience with TCP/UDP network programming
  • Strong problem solving ability
  • Ability to troubleshoot issues in high performance software environments
  • Relentless focus on results and details
  • Experience with test driven development

Bonus Points:

  • Familiarity with the SOLID methodology
  • Experience developing for multiple platforms
  • Familiarity with video streaming: WebRTC, RTP, RTMP, HLS, DASH
  • Familiarity with the following codecs: VP8, H.264, Opus, AAC, PCM, U-Law
  • Experience with OpenGL
  • Experience with mobile audio/video development
  • Familiarity with HTML5/JavaScript
  • Familiarity with node.js
Submit Resume

C++ Video Engineer

Location:Chicago HQ (preferred) / US or Zurich, Switzerland

As a Video Engineer you will help deliver state-of-the-art video playback experiences that allow users to stay engaged in the interactive video experiences that we deliver via our real-time streaming platforms.

We Are Looking For Someone Who:

  • Has knowledge & experience related to video streaming, cloud computing, and computer science
  • Understands the impact of delivering high quality, non-buffering playback experiences to users across a wide range of networks and devices
  • Has a proven ability to improve on existing practices and thrive in a culture that consistently delivers high quality software in a rapidly changing market
  • Thrives in a fast-paced startup environment and is capable of anticipating and meeting business demands
  • Is an effective communicator with other engineers as well as colleagues on the business side
  • Operates with a sense of urgency and has a demonstrated ability to self-motivate and push projects through from inception to post-production release
  • Values accountability and displays a high degree of integrity

Responsibilities:

  • Optimize video and audio codec usage, compression and platform support
  • Create and optimize support for additional codecs such as VP9, AV1, H265
  • Implement systems and feedback loops that allow us to optimize for KPIs related to the video playback experience
  • Collaborate with our DevOps team to put in place methods and tools for state-of-the-art content delivery
  • Collaborate on building a content encoding pipeline that encodes content using state-of-the-art methods
  • Partner with internal teams to troubleshoot streaming challenges across all supported platforms
  • Work with DRM vendors and solutions to provide studio-compliant DRM playback across all platforms
  • Follow standards bodies around audio and video compression codecs and device playback capabilities (SMTPE, W3C, DASH-IF, AV1, HDR, et al.)

Requirements:

  • BS in Computer Science
  • 4+ years of working with common encoding software such as ffmpeg, Elemental and similar
  • 4+ years of experience coding with C/C++

Bonus Points:

  • Hardware accelerated encoding and decoding experience
  • Video encoding and decoding on mobile devices (Android & iOS)
Submit Resume

Customer Success Engineer

Location:Chicago HQ (preferred) / US

As an Integration Engineer with our Post-Sales team, you will be responsible for working with our most strategic customers to launch new user experiences utilizing Phenix’s platform, and optimize those experiences over time. Your primary focus will be providing guidance and hands-on support to their mobile and web developers using our SDKs. Key to this role is the ability to work with customers to understand and translate their requirements into solutions with Phenix. You will also advocate on behalf of customers and collaborate with our Product and Engineering teams to deliver the best overall experience.

We Are Looking For Someone Who:

  • Can quickly build expertise across Phenix’s technologies and advise customers and partners on how to best use our products and services
  • Is comfortable getting hands-on across a wide range of technologies and programming languages
  • Is self-motivated and self-managed with a high degree of dependability
  • Builds trust quickly, develops and maintains excellent relationships with our customers and partners, and helps improve and maintain the highest level of customer satisfaction
  • Is an effective communicator in both technical and non-technical contexts
  • Thrives in a fast-paced startup environment

Responsibilities:

  • Drive growth by helping customers launch quickly and fully utilize the Phenix platform
  • Understand the customer’s objectives and advise them on how to best achieve those objectives using our platform
  • Provide API and product guidance to technical stakeholders such as developers, architects, product managers
  • Turn customers into advocates with fast, expert answers to customer questions
  • Proactively identify issues, and assist customers to successfully use and operate Phenix products
  • Provide feedback to Product and Engineering on customer priorities and issues, to inform both product roadmap and implementation decisions

Requirements:

  • 3+ years experience in a technical role involving direct customer interaction
  • 5+ years experience in mobile / web development in one of the following areas, multiple areas of experience would be advantageous:
    • Backend (Java, C#, Node.js, Python, PHP)
    • Web development (JavaScript, frontend frameworks - React, Vue.js, Angular)
    • Mobile (iOS with Objective-C/Swift, Android with Kotlin/Java)
    • Experience building with REST APIs
  • Familiarity with cloud platforms (Amazon Web Services, Google Cloud, Microsoft Azure) and cloud application architecture
  • Understanding of Web Services, Internet architecture, SQL, and software engineering
  • Technology knowledge related to video streaming, cloud computing, and application integration
  • MS/BS. Computer Science or a related technical degree preferred

Bonus Points:

  • Knowledge of TCP/IP and networking, Streaming and WebRTC protocols
  • Knowledge of encoding and decoding technologies and management of encoding hardware
Submit Resume

QA Automation Engineer

Location:Ukraine

As a QA Automation Engineer you will design and implement automated functional, integration, and regression tests that instill confidence in the software features that we provide via our real-time streaming platform.

Responsibilities:

  • Engineer automated end-to-end tests for our real-time video streaming platform
  • Provide assurance that high quality software is being deployed to the field
  • Provide coverage for various types of tests: video quality and performance; functional testing, REST APIs
  • Provide coverage for various target platforms: web, mobile web, mobile native apps (iOS and Android)
  • Develop high quality test software that can be released to our customers to facilitate their own QA testing

Requirements:

  • BA or equivalent in Computer Science, Computer Engineering, or similar
  • 4+ years of experience
  • Several years of experience writing end-to-end automated tests
  • Proficient in English language: speaking, understanding, writing, and reading
  • Strong proficiency in Javascript
  • Prior experience with node.js as it applies to automated testing
  • Knowledge of / experience with HTTP requests and using them to invoke APIs
  • Enthusiasm for automation
  • Intellectual curiosity
  • Attention to detail
  • Seeks to achieve technical expertise in his/her areas of work

Bonus Points:

  • Experience with WebdriverIO
  • Experience with BrowserStack
  • Experience with Appium
  • Experience with video/media streaming
  • Experience with streaming protocols such as WebRTC, WebSockets, SSE
  • Experience with mobile app automation testing
  • Experience programming with languages other than Javascript
  • Experience providing quality assurance within a CI/CD process
Submit Resume

Support Engineer (US)

Location:Chicago HQ (preferred) / US

As a Support Engineer you will be responsible for the ongoing support of existing Phenix customers. Key to this role is the ability to interact with customers to understand and help solve their issues and challenges. For those issues that you cannot solve directly, you will work with our Product, Engineering and Sales teams to follow up on requests until the customer is satisfied with the resolution.

We Are Looking For Someone Who:

  • Takes full ownership of an issue without supervision, develops and maintains excellent relationships with our customers and partners, and helps improve and maintain the highest level of customer satisfaction.
  • Is an effective communicator in both technical and non-technical contexts
  • Thrives in a fast-paced startup environment
  • Can quickly build expertise across Phenix’s technologies and train customers and partners on how to best use our products and services

Responsibilities:

  • Respond to customers in a timely fashion and manage multiple customer cases to completion in parallel
  • Identify, replicate, and describe incoming issues providing the details necessary for other team members to quickly start next-level debugging and resolution
  • Proactively identify issues, and assist customers to successfully use and operate Phenix products
  • Update and maintain internal support documentation and knowledge base, collaborating with Product, Sales and Engineering to incorporate key learnings into new sales, engineering and product developments and process
  • Manage and improve tools and processes to continuously improve the way we help ourselves to help our customers

Requirements:

  • MS/BS. Computer Science or a related technical degree preferred
  • 5+ years experience in field / support engineering roles
  • Technology knowledge related to video streaming, cloud computing, and application integration

Bonus Points:

  • Knowledge of TCP/IP and networking, Streaming and WebRTC protocols.
  • Knowledge of encoding and decoding technologies and management of encoding hardware.

Perks:

  • Located in downtown Chicago (Wacker and Randolph)
  • Competitive benefits package
  • Collaborating with and learning from a world class team of business professionals and technologists
  • Working with a global and diverse customer base
Submit Resume

Support Engineer (Europe)

Location:Zurich, UK, or France

As a Support Engineer you will be responsible for the ongoing support of existing Phenix customers. Key to this role is the ability to interact with customers to understand and help solve their issues and challenges. For those issues that you cannot solve directly, you will work with our Product, Engineering and Sales teams to follow up on requests until the customer is satisfied with the resolution.

We Are Looking For Someone Who:

  • Takes full ownership of an issue without supervision, develops and maintains excellent relationships with our customers and partners, and helps improve and maintain the highest level of customer satisfaction.
  • Is an effective communicator in both technical and non-technical contexts
  • Thrives in a fast-paced startup environment
  • Can quickly build expertise across Phenix’s technologies and train customers and partners on how to best use our products and services

Responsibilities:

  • Respond to customers in a timely fashion and manage multiple customer cases to completion in parallel
  • Identify, replicate, and describe incoming issues providing the details necessary for other team members to quickly start next-level debugging and resolution
  • Proactively identify issues, and assist customers to successfully use and operate Phenix products
  • Update and maintain internal support documentation and knowledge base, collaborating with Product, Sales and Engineering to incorporate key learnings into new sales, engineering and product developments and process
  • Manage and improve tools and processes to continuously improve the way we help ourselves to help our customers

Requirements:

  • MS/BS. Computer Science or a related technical degree preferred
  • 5+ years experience in field / support engineering roles
  • Technology knowledge related to video streaming, cloud computing, and application integration

Bonus Points:

  • Knowledge of TCP/IP and networking, Streaming and WebRTC protocols.
  • Knowledge of encoding and decoding technologies and management of encoding hardware.

Perks:

  • Competitive benefits package
  • Collaborating with and learning from a world class team of business professionals and technologists
  • Working with a global and diverse customer base
Submit Resume

FullStack Engineer (US)

Location:Chicago HQ (preferred) / US

Phenix is hiring an experienced full stack engineer to help support the ongoing development of Phenix real-time video streaming platform that provides low-latency streaming at high quality and massive scale. A successful candidate has significant frontend development experience, is an expert in Node.js and JavaScript and has demonstrated tenacious attention to detail.

Responsibilities:

  • Full Stack Development in Javascript (Node.js / React)

Requirements:

  • BS in Computer Science
  • 4+ years of experience coding with JavaScript
  • Experience practicing SOLID development methodologies
  • Ability to write clean modular and reusable components
  • Extensive experience with Promises (e.g. bluebird, ES6)
  • Extensive experience with Node.js
  • Familiarity with video technologies
  • Familiarity with testing frameworks such as mocha
  • Experience working on large code bases
  • Experience with message-based and service-oriented architectures
  • Experience in successful triaging issues in high-volume logs of a distributed system
  • Experience with docker
  • Familiar with ssh and bash/zsh
  • Basic familiarity with cloud platforms (gcloud, oci, azure, aws)

Helpful Skills:

  • Experience with HLS/DASH workflows
  • Experience with mission critical software environments
  • Experience with React + redux (async actions (thunk or sagas), reducers, selectors)
  • Experience with HTML5 and Modular CSS
  • Knowledge of cross-browser compatibility
  • Webpack + babel/transpiling experienceExperience developing for multiple platforms (OS, devices and browsers)
  • Experience developing real-time applications
  • Experience with mobile development
  • Familiarity with amqp (RabbitMQ)
  • Familiarity with key value stores (No SQL)
  • Familiarity with web sockets
Submit Resume

Mobile Video Engineer - iOS

Location:Chicago HQ (preferred) / US, Ukraine, or Zurich

As a Mobile Video Engineer you will help deliver state-of-the-art applications that allow mobile users to stay engaged in the interactive video experiences that we deliver via our real-time streaming platforms.

We Are Looking For Someone Who:

  • Has knowledge & experience related to video streaming, cloud computing, and computer science
  • Understands the impact of delivering high quality, non-buffering playback experiences to users across a wide range of networks and devices
  • Has a proven ability to improve on existing practices and thrive in a culture that consistently delivers high quality software in a rapidly changing market
  • Thrives in a fast-paced startup environment and is capable of anticipating and meeting business demands
  • Is an effective communicator with other engineers as well as colleagues on the business side
  • Operates with a sense of urgency and has a demonstrated ability to self-motivate and push projects through from inception to post-production release
  • Values accountability and displays a high degree of integrity

Responsibilities:

  • Design, develop and deliver features in our client SDK on iOS in Objective-C and C/C++
  • Support development and delivery of prototype applications
  • Implement systems and feedback loops that allow us to optimize for KPIs related to the mobile video playback experience
  • Collaborate with our DevOps team to put in place methods and tools for managing the life-cycle of our SDK and applications
  • Partner with internal teams to troubleshoot streaming challenges across all supported platforms

Requirements:

  • MS/BS. Computer Science or a related technical degree preferred
  • 2 years of experience in iOS client application development for iOS using Objective-C/Swift
  • 4+ years of experience coding with C/C++
  • Experience with multimedia and/or video frameworks

Bonus Points:

  • Hardware accelerated encoding and decoding experience
  • Video encoding and decoding on mobile devices (iOS)
  • Familiarity with AVFoundation framework and/or Core Video and Core Audio for iOS
  • Familiarity with the SOLID methodology
  • Familiarity with video streaming: WebRTC, RTP, RTMP, HLS, DASH
  • Familiarity with MPEGTS container format
  • Familiarity with the following codecs: VP8, H.264, Opus, AAC, PCM, U-Law
  • Experience with OpenGL
  • Familiarity with HTML5/JavaScript
  • Familiarity with Node.js
Submit Resume

Mobile Video Engineer - Android

Location:Chicago HQ (preferred) / US, Ukraine, or Zurich

As a Mobile Video Engineer you will help deliver state-of-the-art applications that allow mobile users to stay engaged in the interactive video experiences that we deliver via our real-time streaming platforms.

We Are Looking For Someone Who:

  • Has knowledge & experience related to video streaming, cloud computing, and computer science
  • Understands the impact of delivering high quality, non-buffering playback experiences to users across a wide range of networks and devices
  • Has a proven ability to improve on existing practices and thrive in a culture that consistently delivers high quality software in a rapidly changing market
  • Thrives in a fast-paced startup environment and is capable of anticipating and meeting business demands
  • Is an effective communicator with other engineers as well as colleagues on the business side
  • Operates with a sense of urgency and has a demonstrated ability to self-motivate and push projects through from inception to post-production release
  • Values accountability and displays a high degree of integrity

Responsibilities:

  • Design, develop and deliver features in our client SDK on Android in Java, JNI and C/C++
  • Support development and delivery of prototype applications
  • Implement systems and feedback loops that allow us to optimize for KPIs related to the mobile video playback experience
  • Collaborate with our DevOps team to put in place methods and tools for managing the life-cycle of our SDK and applications
  • Partner with internal teams to troubleshoot streaming challenges across all supported platforms

Requirements:

  • MS/BS. Computer Science or a related technical degree preferred
  • 2 years of experience in Android client application development for Android using Java/Kotlin
  • 4+ years of experience coding with C/C++
  • Experience with multimedia and/or video frameworks

Bonus Points:

  • Hardware accelerated encoding and decoding experience
  • Video encoding and decoding on mobile devices (Android)
  • Familiarity with Android Multimedia Framework
  • Familiarity with the SOLID methodology
  • Familiarity with video streaming: WebRTC, RTP, RTMP, HLS, DASH
  • Familiarity with MPEGTS container format
  • Familiarity with the following codecs: VP8, H.264, Opus, AAC, PCM, U-Law
  • Experience with OpenGL
  • Familiarity with HTML5/JavaScript
  • Familiarity with Node.js
Submit Resume

Phenix drives revenue

With faster time to first frame and Real-Time streaming, you have more interaction, which leads to increased engagement that drives revenue. Find out how we can take your business to the next level.

Learn More