Senior Software Engineer II - Android

Sorenson Communications LLC
  • Salt Lake City, UT
  • Autofill and Review
7 days ago

Job Description

Come be a part of our mission and make a meaningful and positive impact with the industry leading provider of language services for the Deaf and hard-of-hearing!

Full time Benefits

  • Paid Vacation Time and Paid Sick Time and Paid Holidays
  • 401k 6% match with immediate vesting
  • Nationwide Medical Insurance plans and coverage (Medical, Dental/Orthodontia, Vision)
  • TeleDoc
  • HSA company match
  • 3 Medical plan options including a Low Deductible PPO Medical Plan Offering
  • Employee Assistance Program
  • Engaged Employee Resource Groups
  • Outstanding Learning and Career Development Opportunities

Pay Range: Actual pay may vary up or down depending on job-related factors which may include knowledge, skills, experience, and location. In addition, this position may be eligible for incentive compensation.

  • Applicants must be legally eligible to work in the United States to be considered. Visa sponsorship is not available for this role *

Job Summary

The Senior Software Engineer is a technical leader responsible for building, maintaining, and evolving Sorenson's Android Video Relay Service (VRS) applications. This role focuses on developing high‑quality, scalable, and reliable Android applications that enable real‑time video communication for deaf and hard‑of‑hearing users.

This position works primarily in Kotlin using modern Android frameworks, integrating complex native C/C++ libraries through the Android NDK. The Senior Software Engineer II operates with minimal oversight, contributes to technical direction, and partners closely with Product, Design, QA, and native platform teams to deliver accessible, user‑centered experiences.

Essential Duties and Responsibilities

  • Design, develop, and maintain native Android Video Relay Service (VRS) applications using Kotlin and Jetpack Compose.
  • Implement features using modern Android architecture patterns (MVI / MVVM, Clean Architecture).
  • Integrate and maintain native C/C++ videophone libraries via Android NDK, JNI, and SWIG‑generated bindings.
  • Develop and support real‑time video calling functionality including camera, audio routing, call state management, and lifecycle handling.
  • Collaborate across teams working on multiple Android applications sharing a common native engine.
  • Contribute to technical design discussions, architecture decisions, and long‑term platform strategy.
  • Write clean, maintainable, and well‑tested code following engineering best practices.
  • Partner with QA and Product to ensure functional correctness, performance, and reliability.
  • Participate in code reviews, providing constructive feedback and mentoring less‑senior engineers.
  • Contribute to CI/CD pipelines and release processes using tools such as GitHub Actions and Fastlane.
  • Monitor application health and stability using observability and analytics tools.
  • Troubleshoot complex issues across application, framework, and native layers.
  • Participate in Agile/Scrum ceremonies and planning activities.
  • Other duties as assigned.

Supervisory Responsibility

None

Travel Requirements

Less than 25%

Education

Bachelor's degree in computer science, software engineering, or a related technical field preferred, or equivalent practical experience.

Experience

  • 6-8 years of professional software engineering experience.
  • Significant experience developing native Android applications in a production environment.
  • Experience working with complex, large‑scale, or mission‑critical applications.
  • Experience collaborating within cross‑functional, team‑based development environments.
  • Experience supporting applications through full lifecycle: design, development, release, and maintenance.

Knowledge, Skills, and Abilities

Android & Mobile Engineering

  • Strong proficiency in Kotlin and Android SDK fundamentals.
  • Experience with Jetpack Compose, Material Design, ViewModel, Navigation, and related Jetpack libraries.
  • Deep understanding of Android application lifecycle, threading, and performance considerations.
  • Experience configuring and maintaining Gradle builds, flavors, and build types.

Architecture & Development Practices

  • Strong understanding of clean architecture, MVI or MVVM patterns.
  • Experience with dependency injection frameworks such as Hilt or Dagger.
  • Ability to design systems that are testable, scalable, and maintainable.
  • Experience working in multi‑module or shared‑library codebases.

Native Integration & Systems

  • Experience integrating native C/C++ code using the Android NDK.
  • Familiarity with JNI or SWIG‑generated bindings.
  • Understanding of real‑time systems, video/audio pipelines, or low‑latency communication is preferred.

Networking, Data & Persistence

  • Experience using Retrofit / OkHttp or similar networking libraries.
  • Familiarity with local persistence using Room, DataStore, or encrypted storage.
  • Understanding of API‑driven mobile applications and backend integration.

Bonus Skills & Knowledge

  • React / React Native
  • TypeScript / JavaScript / Node.js
  • WebRTC
  • SIP (Session Initiation Protocol)
  • AWS

Testing, Quality & Reliability In priority

  • Experience writing unit tests and instrumented Android tests.
  • Ability to troubleshoot complex defects across application and system boundaries.
  • Commitment to delivering reliable, high‑quality software in CI/CD environments.

Collaboration & Communication

  • Works effectively with Product, QA, Design, and Engineering partners.
  • Communicates technical concepts clearly to both technical and non‑technical audiences.
  • Willing to ask questions, challenge assumptions, and advocate for sound engineering practices.
  • Demonstrates ownership, accountability, and a proactive mindset.

Tools (Preferred)

  • Android Studio, Git, GitHub
  • GitHub Actions, Fastlane
  • Espresso, UIAutomator, AndroidX Test libraries
  • Firebase, Sentry, Pendo
  • Jira, Confluence

What Success Looks Like

  • Android VRS applications are stable, performant, and meet accessibility requirements.
  • Features are delivered with high quality, clear design intent, and minimal rework.
  • Native engine integration is reliable and well‑understood across the team.
  • Codebases are maintainable, testable, and aligned with long‑term platform strategy.
  • Cross‑team collaboration results in predictable, high‑confidence releases.

Company Summary

Our Mission…Leveraging the Power of Language, we connect lives and enrich the human experience.

Our Vision…To provide global language services that expand opportunities, nurture belonging, and empower the world to connect beyond words.

As one of the world's leading language services providers, Sorenson combines patented technology with human-centric solutions. We strive to increase accessibility and inclusion through communication solutions for all: call captioning and video relay services, over-video and in-person sign language and spoken language interpreting, translation, real-time captioning, and post-production language services. Sorenson's impact vision and plan extends to enhancing generational wealth and inclusive workplaces for our employees and the communities we serve.

We achieve great things together working "The Sorenson Way" with our employee values: Customer First, Can-Do Attitude, Collective Action, Growth Mindset, Ownership, and Connect Direct.

Equal Employment Opportunity:

Sorenson Communications is an Equal Opportunity, Affirmative Action Employer.

Numbers & Facts

LocationSalt Lake City, UT

Skills

  • Agile Programming Methodologiesunmatched
  • Amazon Web Services (AWS)unmatched
  • Androidunmatched
  • Android Applicationsunmatched
  • Android SDKunmatched
  • Application Integrationunmatched
  • Application Programming Interface (API)unmatched
  • Atlassian JIRAunmatched
  • Best Practicesunmatched
  • C Programming Languageunmatched
  • C Programming Librariesunmatched
  • C++ Programming Languageunmatched
  • Code Reviewsunmatched
  • Communication Skillsunmatched
  • Computer Scienceunmatched
  • Continuous Deployment/Deliveryunmatched
  • Continuous Integrationunmatched
  • Cryptographyunmatched
  • Dependency Injectionunmatched
  • Engineeringunmatched
  • Gitunmatched
  • GitHubunmatched
  • Gradleunmatched
  • Health Insuranceunmatched
  • Health Planunmatched
  • Hearing Impairmentunmatched
  • Java RNI and JNI (Java Raw or Native Interface)unmatched
  • JavaScriptunmatched
  • Kotlinunmatched
  • Language Interpreterunmatched
  • Mentoringunmatched
  • Mobile Applicationsunmatched
  • Mobile Applications Developmentunmatched
  • Model View ViewModel (MVVM)unmatched
  • Node.jsunmatched
  • Preferred Provider Organization (PPO)unmatched
  • Product Designunmatched
  • Production Systemsunmatched
  • QA Partner Testing Softwareunmatched
  • Quality Assuranceunmatched
  • React Nativeunmatched
  • Realtime Communicationsunmatched
  • Retrofitunmatched
  • SIP (Session Initiation Protocol)unmatched
  • Scrum Project Management and Software Developmentunmatched
  • Sign Languageunmatched
  • Software Administrationunmatched
  • Software Development Lifecycle (SDLC)unmatched
  • Software Engineeringunmatched
  • Technical Leadershipunmatched
  • Technical/Engineering Designunmatched
  • Telephone Skillsunmatched
  • Test Plan/Scheduleunmatched
  • Unit Testunmatched
  • User Interface/Experience (UI/UX)unmatched
  • Vision Planunmatched
  • Willing to Travelunmatched

Level up your application

Professional resume templates

Browse dozens of recruiter approved resume templates, layouts and formats. Choose your favorite and make it your own in minutes.

Free resume templates

Resume Builder

Improve your existing resume or start from scratch and create a standout, ATS-friendly resume. Add job-specific content, download and apply.

Resume Builder