Senior Software Engineer II - Android

Sorenson Communications

$100K — $130K *
Consumer Technology
5 - 7 years of experience
Job Overview by Ladders

Qualifications

  • Bachelor's degree in computer science or related field, or equivalent experience.
  • 6-8 years of professional software engineering experience.
  • Extensive experience developing native Android applications in production.
  • Experience with complex, large-scale applications.
  • Proven track record in cross-functional team collaboration.

Responsibilities

  • Design, develop, and maintain Android VRS applications using Kotlin.
  • Implement features with modern architecture patterns such as MVI/MVVM and Clean Architecture.
  • Integrate native C/C++ libraries via the Android NDK.
  • Develop real-time video calling functionality regarding audio routing and call management.
  • Collaborate across teams on multiple Android applications with a shared native engine.
  • Contribute to architectural decisions and platform strategy.
  • Participate in Agile/Scrum ceremonies and code reviews.

Benefits

  • Flexible working hours and the option for remote work.
  • Collaborative team environment focusing on diverse perspectives.
  • Opportunities for professional development and continuous learning.
  • Use of modern tools and technologies to enhance productivity.
  • Health and wellness benefits to support a balanced lifestyle.
Full Job Description
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.

Similar Jobs

More Jobs at Sorenson Communications

More Consumer Technology Jobs

Find similar Senior Software Engineer II - Android jobs: