We provide IT Staff Augmentation Services!

Senior Android Developer Resume

3.00/5 (Submit Your Rating)

SUMMARY

  • 5+ years of solid native Android experience, in addition to a solid general software engineering background.
  • Experience of Java and Kotlin Programming language.
  • Experience of using Git or other version control systems.
  • Experience of writing unit tests, Android implementation tests, automated unit testing, UI automation and test - driven development.
  • Experience of Agile methodologies, tools and understanding of the Scrum Development methodology.
  • Exposure to mobile middleware and integration with different web services and message exchanges (e.g. SOAP, REST, XML, JSON) Experience with all the usual stuff (multi-threading, integration with REST APIs, view animations, custom transitions, multi-threading).
  • Understanding of HTML / JavaScript.
  • Familiar with OOP design patterns such as Fac ade, Abstract Factory, Builder, Singleton, Observer, MVC, MVP, MVVM, Protocols & Delegation, etc.
  • An understanding of Android Auto, Android TV, BLE and Google Home API with third-party analytics services.
  • Experience designing for Tablets and other big screen devices.

PROFESSIONAL EXPERIENCE

Confidential

Senior Android Developer

Responsibilities:

  • Implement Android Architecture lifecycle aware components and use LiveData to build data objects that notify views when the underlying database changes.
  • Created Android Notification channels and background limits for account Alerts and set notification preferences to keep tabs on your account activity.
  • Improved Android Keystore program to store cryptographic keys in a container and protect key material from unauthorized use.
  • Authenticated users via Fingerprint scan API and implement the user interface for the fingerprint authentication flow.
  • Make sure Room DB persisted to disk is transparently encrypted and decrypted with standard AES-256 encryption Pair program to work on the feature Transfer money between your Confidential accounts’ in a TDD way.
  • Developed a library that abstracts the core banking business rules and defines the business objects in order to provide an interface for GUI.
  • Created Repository layter that implements core banking RESTful services, Executors/JobIntentServices for multithreading.
  • Use RxPS, RxJavaPriorityScheduler, RxAndroid library in Reactive environment to parse multiple streams of data concurrently for Account API, Balances API and Nearest Banks API.
  • Write test cases for list of acceptance criteria in Business layer using Mockito and on presentation layer using Espresso (UI).
  • Use CharlesProxy API to determine if SSL Pinning was functioning correctly (as part of Secure Coding Practices) so that man in the middle attacks would not be possible.

Confidential

Senior Developer

Responsibilities:

  • Refactor legacy codebase using TDD, Dagger2 dependency injection, RxJava, Retrofit in MVVM design pattern using data-binding library.
  • Emphasise on unit testing using Mockito and setup jaCoCo to check my code coverage of new code.
  • Work with the new Google Play Services library to use Route API, load Map styles from JSON and create custom markers for nearest ride and user location.
  • Work on AWS Mobile Hub Cloud Logic mobile backend service feature to add business logic functions in the cloud and communicate with RestFul API from backend.
  • Implement RxJava2 for multithreading with Retrofit, okhttp caching and functional operators(flatmap/map/zip/flowable/disposable) to make API calls to display list of cars in RecyclerView with custom header.
  • Integrate payment methods such as Stripe SDK, Visa API, card.io to make and schedule payments for the rides.
  • Create Dagger components, scores, modules and subcomponents to inject the needed dependencies into different app fragments, services, view models and activities.
  • Create Schedulers mock using RxJava TestScheduler in unit tests and trigger TestScheduler to drive function behavior as expected.
  • Use Atlassian Bamboo as a Continuous integration system to track released versions with all of fixes detailed in a changelog and code backup.
  • Store previous ride history information using GreenDAO with SQLCipher library and secure shared preferences to persist data securely inside the application.

Confidential

Mid-Level Mobile App Developer

Responsibilities:

  • Convert MVC to MVP architecture along with SOLID principles, singleton, builder, facade, factory and observer design pattern.
  • Work with Google Cast SDK TO enable Google Cast device to cast videos to a TV and asynchronous callback design to inform the sender app of events and to transition between various states of the Cast app life cycle.
  • Play live videos in ExoPlayer to support features like Dynamic adaptive streaming over HTTP (DASH), SmoothStreaming and Common Encryption.
  • Independently work on the feature to display ‘hundreds of thousands of broadcasters around the world’ in RecyclerView using Volley and Glide library.
  • Pair Program to work on Apache Commons Codec software to provide implementations of common encoders and decoders such as Base64, Hex, Phonetic and URLs.
  • Configure MixPanel backend with GCM key to send push notifications for live events, news and available downloadable videos.
  • Fix a bug causing draft events to become public after skipping the prompt to publish.
  • Debug and fix access to Bluetooth settings, network connectivity, Wi-Fi Multicast reception, connect and disconnect from Wi-Fi, run at startup and prevent phone from sleeping features.
  • Perform Code reviews using Collaborator tool and merged pull request using source tree in GitFlow process.
  • Utilise Facebook Stetho, Debug tools, TraceView, Lint, Android Monitor, and Android Profiler to identify issues and enhance the performance.

Confidential

Android Developer

Responsibilities:

  • Fix critical hardware related issues logged in JIRA with respect to network connections, Wi-Fi connections, full network access, Google Play billing service, record audio and control vibration.
  • Integrate AppsFlyer and MoPub SDK to support viewability measurement and flexible Ad Network mediation.
  • Fix camera distortion issues when in AR Mode which affected some devices (i.e. Nexus 6).
  • Work on Camera2 API for image capture with different resolutions, PEG Image Capture, YUV Image Capture, Camera Change option and exposure properties.
  • Used uCrop Android Image library to rotate, crop images for 4x6, 11x14 and 12x18 sizes and manage compression format (e.g. PNG, JPEG, WEBP), compression.
  • Used Butterknife injection for non-Activity binding in adapters and fragments/activities.
  • Refactor code with EventBus to simplify communication between Activities, Fragments, Threads and Services.
  • Work on JUnit testing framework for testing network modules and APIs.
  • Include Google In-App Purchasing API to offer for purchase digital content and subscriptions.
  • Incorporate online/offline sync mechanism to ensure seamless transition between connectivity states using ORMlite db.
  • Polish the user interface by using RecyclerViews, NestedScrollViews, CardViews, CoordinatorLayouts, constraint layouts with in-house custom views and the new ConstraintLayout.

Confidential

Native App Coder

Responsibilities:

 
  • Work on large complex existing codebase in latest Android SDK, Android Studio and APIs using TDD, MVP and dependency injection design concepts.
  • Replace bitmaps implementation code with Glide image loading library for animated GIF support and handle image loading/caching.
  • Implement Loaders and AsyncTaskLoaders to perform asynchronous data loading in the custom list view for grocery lists and recipe scaling.
  • Work on memory management, push notifications, multiple screen support, data offline usage, content providers and sync.
  • Work on Sorting algorithm to sort recipes by favorites, new recipes, recently prepared, recently viewed or alphabetically in a list view.
  • Sync data from backend locally to SQLIte database and external storage in a file to save up to 100 recipes.
  • Use WebViews for loading external websites and automatically import the entire recipe box from allrecipes.com or Epicurious in the app.
  • Incorporate Google Analytics to create Content reports to focus future development efforts.
  • Import device specific content-providers and build own custom content providers based on client requirements.
  • Create several compound views to match the UI provided by the UI team using Zeplin.

We'd love your feedback!