Senior Mobile Engineer

FidelityWestlake, TX
6dHybrid

About The Position

Position Description : Develops publicly available, performant, and resilient native Android apps, using Kotlin, Java, Gradle, and Android Studio in an Agile environment. Writes and maintains application features and automated tests including unit, component, integration, functional, performance, scenario, and interoperability tests. Assists with designing and developing automation, using UI Automator/Espresso/Maestro frameworks. Assists with designing reliable, accurate tests, and integrating them into Continuous Integration and Continuous Delivery (CI/CD) pipelines.

Requirements

  • Bachelor’s degree in Computer Science, Engineering, Information Technology, Information Systems and Technologies, or a closely related field (or foreign education equivalent) and three (3) years of experience as a Senior Mobile Engineer (or closely related occupation) developing and deploying native mobile applications in an enterprise-level Android development environment.
  • Or, alternatively, Master’s degree in Computer Science, Engineering, Information Technology, Information Systems and Technologies, or a closely related field (or foreign education equivalent) and one (1) year of experience as a Senior Mobile Engineer (or closely related occupation) developing and deploying native mobile applications in an enterprise-level Android development environment.
  • Demonstrated Expertise (“DE”) collecting business requirements and designing scalable Android apps for enterprise applications, using Kotlin, Java, Jetpack compose, Navigation, and core components (including activity, services, and material designs); developing and deploying features with architectural patterns -- Model-View-ViewModel (MVVM), Model-View-Intent (MVI), Model-View-Presenter (MVP), and Clean Architecture; and building User Interface (UI) components and Software Development Kit (SDKs) to support dynamic user experiences (using Android Studio, Gradle, and Git) for version control and CI/CD integrations (using Jenkins).
  • DE developing robust Android applications using Jetpack Compose for declarative UI; performing seamless in-app routing using Navigation Component; integrating backend services via RESTful and GraphQL APIs, using Retrofit, OkHttp, and Apollo GraphQL; performing asynchronous programming with Kotlin Coroutines and local persistence, using Room DB and Gradle to build configuration, dependency management, and Android core libraries; and designing and implementing unit and UI unit test cases, and suites, using JUnit, MockK and Mockito, and Compose UI Test, with a strong focus on maintaining comprehensive code coverage.
  • DE implementing and owning complete enterprise test suites from unit to end-to-end testing on test pyramid, ensuring comprehensive coverage across functional, integration, and UI layers; developing end-to-end automated tests using UI Automator, Espresso, and Maestro; integrating tests into CI/CD Jenkins workflows using shell scripts, Gradle, and internal device farms lab to ensure continuous quality assurance; and implementing Page Object Model architecture for scalable UI automation in enterprise apps.
  • DE developing modular features and reusable components, using best coding practices and standards; creating custom UI components, SDKs, and domain services for Application Programming Interfaces (APIs) and Jetpack libraries; implementing secure data exchange mechanisms and security best practices (including encrypted storage, MFAs, and role-based access control compliance with organizational-grade security systems); and building multi-modules to maintain and scale Android applications, using coroutines to simplify tasks, including network calls, database operations, and enhanced error handling.

Responsibilities

  • Designs and implements scalable mobile applications.
  • Optimizes workflows for performance and reliability.
  • Collaborates with teams to support application development.
  • Performs advanced technical and functional analysis for application projects.
  • Builds omni channel user experiences and platforms to support the enterprise’s digital presence.
  • Improves test coverage, release velocity, and production health.
  • Architect applications from end-to end with a focus on customer experience, ease of use, reusable core, and common components development.
  • Enhances software architecture and maintainability.
  • Promotes proper software engineering and bug prevention strategies, testability and security.
  • Develops software system testing and validation procedures, programming, and documentation.
  • Modifies existing software to correct errors, upgrade interfaces, and improve performance.
  • Analyzes information to determine, recommend, and plan computer software specifications on major projects.
  • Proposes modifications and improvements based on user need.
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service