We provide IT Staff Augmentation Services!

Android Senior Mobile Engineer Resume

San Jose, CA

SUMMARY

  • 10 years in Android development.
  • 5 apps published to Google Play Store.
  • Experience in the use version - controltools such as Subversion SVN, GIT, GitHub, etc.
  • Experience developing highly efficient Java code and view layouts and the ability to diagnose performance bottleneck.
  • Implemented the RESTful data consumption using Retrofit with anOkHttpclient, GSON and Jackson converters and a custom interceptor.
  • Designed various applications using optimal architectural design patterns such as Model View Controller (MVC), Model View Presenter (MVP), Model ViewViewModel (MVVM).
  • Worked in Kotlin and Java and translated from one to another.
  • Excellent in modeling and translating business models and requirements to use cases and diagrams.
  • Work with latest android technologies including but not limited to Coroutines, LiveData, ViewModel, Room Database, WorkManager, etc.
  • Experience with embedded local storage solutions such as SQLite.
  • Familiar with architecture patterns (MVC, MVP, MVVM) and design patterns (Singleton, Facade, Command, Builder, Integrator, Visitor, Proxy, etc.),
  • Work withanalytics tools forAndroidmobile applications such asAnswers,Google Analytics,Localytics,Mixpanel, Flurry,NewRelic.
  • Efficiently consumed and managed RESTful web services with XML and JSON formats.
  • Android performance profiling, memorymanagement,power management and optimization.
  • Comfortable providing mentorship and training Junior developers.
  • Knowledgeableof data models and data access and optimization.
  • Experienced ingatheringanddocumenting requirements.
  • Integration ofexternal APIs such as Facebook, Instagram, Twitter, LinkedIn, Confidential, Google Maps and Google Charts, YouTube.
  • Design, develop, and document application and framework code in Java andKotlin.
  • Use of various frameworks and suites such as Rx, Firebase and Android Jetpack.

TECHNICAL SKILLS

Design Patterns: MVC, MVP, MVVM, Singleton, Dependency Injection, View Holder, Builder, Adapter

Android Libraries, Frameworks and APIs: Jersey Library,open-sourcelibraries, Google Maps API, Volley, Junit, Google Places, Retrofit,RecyclerViewAnimator, Location Services,FloatingActionButton, Google Cloud Messaging, Schematic, REST, Bluetooth Low Energy,NineOldAndroids,JobScheduler, Push Notifications

Web Services: JSON, REST, SOAP, XML, AJAX

Programming Languages: Java,Kotlin

Frameworks: Android Jetpack, Firebase, RxKotlin, RxJava

IDEs: AndroidStudio,Eclipse, Visual Studio

API: Facebook, Twitter, Google Maps, RESTful, Volley, Picasso, Glide, YouTube, Retrofit,ButterKnife

Front-End UI Development: Custom android views classes and components, Android adapter views likeListView,RecyclerView,GridViewand Gallery, Customized List views, Gallery widgets

Methods: Material Design, Agile/Scrum,TestDrivenDevelopment(TDD)

Data Related Tools: Firebase,SQLite, Room Database, SharedPreferences, EncryptedSharedPreferences

Issue Tracking: JIRA, Jenkins, Atlassian Suite

Testing: Espresso,Robolectric,Mokito, Junit, Selenium & Appium

Version Control: Git, SVN, GitHub, SourceTree, Tower,BitBucket

Native Java Frameworks: Java Swing, Ajax Swing, GWT

Change Management: Git/GitHub, SVN, Jenkins, Travis CI

Software: MS Office (Word, Excel, PowerPoint, Paint), AdobePhotoshop, Maven, Gradle

Operating Systems: Android, Unix/Linux, Mac OS, Windows

PROFESSIONAL EXPERIENCE

Android Senior Mobile Engineer

Confidential, San Jose, CA

Responsibilities:

  • Initially worked as lone Android developer and started the base of this project by creating this first module and creating the main repository.
  • Currently working as part of a 6-member Android team applying an Agile project development methodology with two-week sprints.
  • Apprising some newer members of our team about what was being worked on in the earliest stage of project, which is a “way to pay” application. This app allows users to pay for items online with a bank account instead of a credit card and allows them to send and receive money to other users who have an account on Confidential as well.
  • Focusing mainly on front end and instrumentation stories, with a touch of back end.
  • Using Android Studio (working in Android 11) with Kotlin codebase following MVVM architecture.
  • Creating three modules for this shopping hub application:
  • Demo module - allows us to test each component separately.
  • Shopping module - for creating the UI (layouts) for each component as well as the fragment classes associated with it, and its interaction with the view models of each component and view holders. Also has the instrumentation of each feature.
  • Shopping-network module - for dealing with back end (Graphql), composed of multiple Graphql files with different queries and current schema.
  • Programmed Kotlin expressions and higher order functions to reduce boilerplate code.
  • Developed new features in Kotlin to reduce codebase with data classes and extension functions.
  • Using Jira to assign tasks and groom stories.
  • Applying Cucumber, JUnit, Roboelectric, and Espresso for testing.
  • Using Dagger 2 and Hilt for dependency injection.
  • Ung Android Studio and XML Layouts to create the UI for the features of this application; mainly using Constraint and Linear Layouts for these features.
  • Creating the UI for multiple components inside one whole fragment (shopping hub) mainly using CardViewsand RecyclerViews for sections of the main page and other list pages.
  • Using UI libraries specific to Confidential to provide components such as CardViews with specific attributes such as size, margins, elevation, padding, and fonts.
  • Using an Image Loader specific to Confidential to help load URLs of images and logos from back end.
  • Using graph navigation to navigate through each fragment. Each deal or offer clicked leads to another page with more details about the respective deal or offer or leads to an in-app browser of the merchant of that deal/offer.
  • Implementing pagination using Paging 3 library for each of the list pages in the app.
  • Using coroutines for managing background tasks.
  • Using Lighthouse FPTI ( Confidential library) to log analytics for instrumentation.
  • Using Retrofit and GraphQL for API integration through which we follow certain schemas and queries to fetch data from back end.
  • Using GitHub for code organization, one main repository with multiples of forked repositories.

Android Senior Mobile App Developer

Confidential, New York, NY

Responsibilities:

  • Worked in a hybrid codebase with both Java and Kotlin coding while transitioning to Kotlin.
  • Eliminated null point exceptions using Kotlin using Android Studio.
  • Implemented Android Java coding using custom frameworks for both network and design themes.
  • Refactored code to transition the existing MVP app architecture to MVVM architecture.
  • Handled network data calls from JSON responses with Retrofit.
  • Configured network and error code handling configurations using Monkey.
  • Actively worked with the back-end team to improve the RESTful API to include new features for the Android app.
  • Ensured that UI/UX teams followed Material Design best practices and guidelines.
  • Implemented Material Design features of RecyclerView, ActionBar, CardView for Android app user interface.
  • Worked with asynchronous requests to the server with Volley library.
  • Used Fabric Crashlytics to track user behavior and get mobile analytics.
  • Used Jenkins CI for continuous integration and testing.
  • Led developers in code-reviews and oversaw development of unit tests and functional tests, using JUnit and Mockito and Espresso.
  • Used Retrofit and GSON to retrieve information from an internally programmed API in Android development.
  • Firebase Cloud Messaging
  • Created parser data for backend-controlled UI and implemented Glide library for image loading and caching.
  • Utilized SQLite for data persistence and Shared Preferences for login info.
  • Made asynchronous API requests using Retrofit and RxJava to accomplish consumption effectively.

Android App Developer

Confidential, Louisville, KY

Responsibilities:

  • Participated in the entire software development lifecycle from conception, through planning and to deployment to the Google Play store.
  • Engaged in architecture, and design using tools for information architecture, and wireframing.
  • Worked closely with UX designers to plan implementations that would deliver the best user experience.
  • Effectively communicated how development efforts fit with requirements and reasons for development decisions.
  • Effectively used Activities, Services, Broadcast Receivers, SQLite, and preferences Android components.
  • Embedded local storage solutions such as SQLite.
  • Employed unit-test code for robustness, including edge cases, usability on the app project.
  • Enhanced Android user experience with the implementation of a customized Tab Navigation.
  • Enhanced the network module which communicated with the various back-end services.
  • Enhanced the module that communicates with the Java Web Services with Retrofit.
  • Enhanced the UI/UX with expertise of well-designed UX/UI and by adding custom views and compound views. Also collaborated with designers on the Android look and feel.
  • Enhanced the user experience by validating first the network state before calling a web service.
  • Ensure backward compatibility by using Android support libraries.
  • Ensure effectiveness of SCRUM related meetings (planning, retrospective) and discussions, assisted with project planning and ensured deadlines were met.
  • Ensured code was well-documented.
  • Ensured display and on-screen rotation worked well on all devices and screens, ensuring integrity with the onSaveInstanceState and onRestoreInstanceState methods.
  • Established communication with back-end server to consume Restful API using core Android classes.

Android Mobile Application Developer

Confidential, Boston, MA

Responsibilities:

  • Followed AGILE methodology with Test Driven Development for developing/implementing the application.
  • Applied Android design patterns such as Façade, Decorator, Observer, and Singleton over an MVVM architectural pattern coding in Java.
  • Worked on JUnit testing framework for testing network modules and APIs.
  • Used Parcelable to serialize Java objects from Activity to Activity.
  • Used RxJava to handle the communication to the web services.
  • Used Retrofit and GSON alongside RxJava for easier consumption of web services.
  • Contributed to project architecture and database structure while utilizing best practices in performance, stability, scalability. and security
  • Wrote algorithms to create ‘Due Date Calculator’ and utilize NDK to call native C, C++ functions.
  • Wrote multithread programs to download weekly pregnancy videos using DownloadManger API.
  • Programmed highly efficient Java code and view layouts and the ability to diagnose performance bottleneck.
  • Used Git repositories to have the software in a version control environment.
  • Reported the status of a work request run in a JobIntentService to the component that sent the request using LocalBroadcastManager.
  • Worked closely with the back-end API team to fix the structure of old JSON messages and serialized JSON to back-end server.
  • Created paid version product flavor and built variants for paid customers to expose advance features.
  • Measured usage trends, uncovered issues, and analyzed behaviors using Crittercism.
  • Utilized Facebook Stetho, CPU profilers, memory monitors, Services and Android Profiler to identify issues and enhance the performance.
  • Worked on Google In-app Billing and Amazon to provide checkout processing for in-app purchases to buy subscriptions.
  • Incorporated Crashlytics to deliver real-time, detailed crash reports with TeamCity CI.

Android Developer

Confidential, San Francisco, CA

Responsibilities:

  • Worked as part of a small team and worked one-on-one with stakeholders.
  • Collaborated in a Waterfall, rigid, linear progress through product lifecycle.
  • Worked to achieve the goals and vision articulated by product management stakeholders and management chain.
  • Adhered to established Agile development processes, procedures and standards.
  • Utilized Android-Job utility library to run jobs delayed in the background by creatingJobRequestwith the corresponding builder class and scheduled requests with theJobManager.
  • Worked onJSoupJava HTML Parser library to use DOM, CSS, andJQuery-like methods and implemented the WHATWG HTML5 specification, and parsed HTML to the same DOM.
  • Utilized advanced functions of the Java software development kit (SDK) to optimize the flexibility of apps to different mobile devices.
  • Introduced Observable Custom Elements that took advantage of live data into the codebase.
  • Worked in Pair Programming strategy to reduce the learning curve on the customs process and custom SDK.
  • Worked on custom markers, update Google maps v2 to v3 and geo-location-based features to search the nearest match.
  • Improved the user experience, Realtime App Analytics, and Conversion Funnels usingAppseeSDK.
  • Utilized FacebookStetho, Charles Proxy API, Memory Profiler, HierarchyViewer, and Android Profiler to identify issues and enhance the performance.
  • Created module to code the user-story 'make a quick connection with ladies and guys nearby'.

Hire Now