Type: Contract, per-project.
Location: Remote - alignment with North America is preferred (ideally Pacific Time, acceptable PT-ET).
Availability: Contractor (40 hours per week)
We’re looking for a highly capable Software Engineer to join our Powered team and help build the core libraries behind our product as well as the SDKs used by device manufacturers and third-party application developers worldwide.
You’ll work on low-level networking features, platform-specific implementations and cross-platform SDKs that directly impact how millions of users measure and understand their Internet performance.
What you’ll do
Design and build reusable components and library features used within our Android and mobile products.
Develop network testing and connectivity-related functionality using Java, Kotlin and, when needed, Kotlin Multiplatform.
Contribute to performance-sensitive components and collaborate with senior engineers on native or low-level implementations when required.
Maintain and support existing Android components and legacy modules built in Java.
Design clean, well-structured and easy-to-use APIs for application and internal library usage.
Work closely with Android platforms, device capabilities and system-level features.
Help ensure reliability, flexibility, portability and code reuse across mobile components.
Implement basic analytics and telemetry to monitor performance and behavior in production.
Write unit and integration tests to ensure quality and stability.
Debug and troubleshoot multi-layer and multi-platform issues with guidance from senior engineers when needed.
Collaborate with backend team on technical solutions and implementations.
Contribute to documentation and ongoing maintenance of mobile libraries and components.
Participate in code reviews and continuous improvement of engineering practices.
What we’re looking for
3+ years of professional software development experience.
2+ years of professional Android development experience.
Good proficiency in Kotlin and Java.
Solid knowledge of data structures, algorithms and common design patterns.
Experience building reusable components or libraries within Android projects.
Good understanding of the Android Framework and Android SDK.
Experience working with threading, concurrency and performance optimization on Android.
Experience using networking libraries such as OkHttp and working with HTTP-based APIs.
Good understanding of networking fundamentals, mainly HTTP/HTTPS and basic TCP concepts.
Experience or strong interest in working with Kotlin Multiplatform or cross-platform libraries.
Experience writing unit and integration tests.
Good debugging and troubleshooting skills.
Experience working with Git-based workflows (branches, pull requests and code reviews).
Basic experience working with CI/CD pipelines.
Ability to learn new projects and codebases effectively.
Good communication and collaboration skills in distributed teams.
Strong sense of ownership and good time-management skills.
Nice to have
Basic experience with C++.
Experience with Swift.
Contributions to open-source projects.
Loading similar jobs...
Step into the forefront of mobile innovation! Unlock career opportunities in cutting-edge app development.