We provide IT Staff Augmentation Services!

Sr. Android Developer Resume

5.00/5 (Submit Your Rating)

CA

SUMMARY

  • 8+ years of experience in Android development.
  • 6 apps published to Play Store.
  • Effective working on Android development teams applying Agile/Scrum methodologies.
  • Experienced working on Agile teams and applying Agile project methodologies with Daily Scrums, Sprints, Sprint Planning, Sprint grooming, Sprint Retrospective, and Sprint Backlog.
  • Hands on with MVP, MVVM, and MVC architectures.
  • Program in Kotlin and Java, with experience converting Java programs to Kotlin.
  • Experience with frameworks RxJava, RxKotlin, RXBluetooth, and RxAndroid.
  • Stay up to date on the ever - changing mobile and Android technology landscape.
  • Knowledge and demonstrated skill applying Activities, Fragments, Custom Views, Services, Volley, Support library, and 3rd- party libraries.
  • Fully conversant with OOP principles, software development frameworks, and design patterns.
  • Strong knowledge in Android multithreading frameworks: AsyncTaks, IntentServices, Handlers, Threads, Runnables, Loopers.
  • Implement asynchronous services to update local storage and notify updates in the UI (Content Providers, Services, SyncAdapters, Loaders).
  • Implement the RESTful data consumption using Retrofit with an OkHttp client, GSON and Jackson converters and a custom interceptor.
  • Experienced using the main ViewGroups provided by the Android SDK: FrameLayout, LinearLayout, RelativeLayout, CoordinatorLayout.
  • Knowledge/experience applying dependency injection (DI) framework for Kotlin development.
  • Dependency Injection with Dagger 1, Dagger 2.
  • Utilized Google Material Design for the user interface (UI)/user experience (UX) re-design of the apps look, feel, and functionality.
  • Configured Charles Proxy for web debugging.
  • Applied various project management tools such as Rally to track each phase of the development iterations and releases and map defects with the user stories.
  • Set up the development process for real-time data exchanges by deploying a Firebase platform.
  • Hands-0n with various JetPack components to make development and maintenance more efficient.
  • Applied Android Studio as the primary IDE to develop, test and deploy Android applications.
  • Used Bitbucket to manage Git repositories and versioning control.
  • Optimized Android applications by implementing designs in high-performance frameworks and libraries.
  • Improved application performance using Activities, Activities for Result and RecyclerViews.
  • Adept with Android performance tuning and crash reporting applications as well as use of Leak Canary, Firebase Crash Reporting, Crashlytics and various profiling tools.
  • Implemented the Android application in MVP architectural pattern.
  • Used design patterns: MVP, Factory, Singleton, and Decorator.
  • Implemented automated testing with Espresso and Mockito.
  • Experience with various APIs including Facebook, Twitter and YouTube
  • Experience uploading apps on the Google Play Store.

TECHNICAL SKILLS

Languages: Java, Kotlin, C++, HTML, CSS, JavaScript, Scheme

Databases: Room, MySQL, SQLite, Firebase DB

IDE: Eclipse, Android Studio, IntelliJ

Multimedia: Glide, Picasso, ExoPlayer, Videoplayer

Development: JIRA, Continuous Integration, Git, GitHub, TDD, BDD, Kanban

Project Methodologies: Agile, Scrum, Waterfall

Android Dev: Espresso, Mockito, Moshi, Retrofit, JUnit, Glide, Loopers, Loaders, AsyncTask, RxJava, RxKotlin, RxBluetooth, RxAndroid, GSON, LiveData, MVVM, MVC, MVP, Room, Dagger 2, Jenkins, Android Profiler, Coroutines, Layouts, Google Architectural Components, EventBus, RecyclerView, Services, LiveData, Google Maps API, Mockito, Mitek, MiSnap SDK

PROFESSIONAL EXPERIENCE

Confidential, CA

Sr. Android Developer

Responsibilities:

  • Worked on an Android team with 6 iOS Developers, 4 Android Developers, 4 QA and 3 UI/UX designers in an Agile environment.
  • Refactored code base from MVP to MVVM architecture.
  • Contributed with migration from Java to Kotlin JVM language.
  • Worked closely with backend developers to debug and create proper documentation in multiple endpoints.
  • Refactored Retrofit network API to create a Singleton approach.
  • Refactored callback strategy with Lifecycle aware Observables to consolidate backend consumption.
  • Utilized AndroidPlot API in different places to chart multiple data from server.
  • Created multiple log process utilizing Logger API to easily identify investments flow as part of the application.
  • Debugged code to support multiple screen sizes and created multiple layout qualifiers.
  • Created CustomViews to reduce project overhead can increase reusability of code in multiple places.
  • Created push notifications message from Firebase console and debugged message received from Firebase console.
  • Created cache strategy has part of the retrofit client.
  • Utilized Charles Proxy for increase the performance in the consumption of network endpoints.
  • Collaborated with login feature to implement different sign in options utilizing fingerprint device feature.
  • Assisted web with automatic/ manual QA, and helped QA write Cucumber/ Ruby tests for web as well as for Android.
  • Debugged using Logcat/ DDMS, crash reports with Crashlytics, and network issues with Charles Proxy/ Splunk.
  • Utilized GSON Convertor Factory to parse JSON object in web services consumption and used Retrofit and RxJava for essential framework to provide asynchronous communication with back-end services.
  • Delivery anywhere you are. DoorDash offers the greatest selection of your favorite local and national restaurants -- more than 310,000 menus across 4,000+ cities in the U.S.,Canada and Australia. Spend more time doing the things you love -- we'll take care of the rest.
  • Tech Contributions:
  • Worked with other developers to write software based on backlog items.
  • Worked with testers to ensure they are engaged and ready to test the software at the right time in the development cycle.
  • Supported, refactored, and enhanced existing production systems.
  • Organized business logic, workflows, processes, rules in Domain layer and communicated with data/ presentation layer in MVP architecture.
  • Integrated OAuth2 authentication with Identity Server.
  • Enhanced the module that communicates with the Java WebServices with Volley library.
  • Collected customer data and send it to your tools for mobile analytics, marketing automation, and raw data access with SQL using Segment SDK.
  • Replaced Samsung Pay with card.io library for credit card scanning and BrainTree SDK.
  • Used GitFlow for code integration.
  • Utilized Jenkins for continuous integration.
  • Applied JIRA for bug tracking.
  • Worked on Schedule Deliveries’ and Real Time tracking’ acceptance criteria’s in TDD manner.
  • Wrote automated UI test cases using Espresso and Mockito and functional integration testing using Robolectric API.
  • Performed additional beta testing using Google Cloud testing mechanism.
  • Encrypted card details in Android Keystore system to store cryptographic keys in a container to make it more difficult to extract from the device.

Confidential, Redwood City, CA

Android Developer

Responsibilities:

  • Design main app screen using material design principles using coordinator layout, Recyclerview, collapsable toolbar and bottom-up sheets to display trendy fashion, shoes, beauty, jewelry, watches and accessories. Worked in a medium size team, following an Agile like methodology, and apply Pair-programming. For CI/CD we used Jenkins CI and data repository with SVN.
  • Integrate Snap Creative Kit SDK to let users send photos or videos to the Snapchat camera preview and use Snapchat tools .
  • Work on Braintree Client with Encryption Library to securely collect payment information from customers and customize checkout experience.
  • Pair-program to integrate Mitek MiSnap to capture ID documents like passports, id cards, etc. to verify users' identities.
  • Perform vital task like HTTP transport, error handling, authentication, JSON parsing and media download/upload using Google GData client Java library.
  • Use SignPost oAuth library to sign HTTP messages and request tokens from an OAuth service provider.
  • Create modules, components and custom scopes using Dagger2 and perform loose coupling.
  • Write code on network module to implement Okhttp caching mechanism and use Mockserver to mock API responses.
  • Validate asynchronous operations whose results affect subsequent operations in a UI test using Idling Resource Espresso.
  • Work existing Clean code architecture in MVP and create shopping module, add to basket module and customer profile module.
  • Provide backwards-compatible notification API with Wear and Auto support, media playback and routing.
  • Develop Compatibility APIs for checking and requesting permissions in app

Confidential, Seattle, WA

Android Developer

Responsibilities:

  • I worked on an Android team consisting of 5 developers working within an Agile project methodolgy. Hands-on technical work highlights:
  • Customized Home Filters to enable search by price, property type, and desired features.
  • Configured app to enable users to save favorite homes and property searches to their Confidential account.
  • Configured app to get directions and alert a user to attend every open house in user’s area.
  • Utilized Facebook Stetho, Charles Proxy API, Memory profiler, HierarchyViewer and Android Profiler to identify issues and enhance the performance.
  • Configured MixPanel API to send instant notifications when a new home hits the market and push notifications for any house, condo, or townhome that meets search criteria.
  • Created bound service to send requests, receive results, and even do so across processes with interprocess communication (IPC).
  • Created a custom transition animation and applied one or more animation effects to all of the views in a view hierarchy.
  • Coded the algorithm necessary to properly structure the query for the request needed to implement the “Filtered Search” feature.
  • Migrated from AsyncTasks and IntentServices-based components to a reactive paradigm with RxJava concurrency modelling.
  • Included Android-Job utility library to run jobs delayed in the background by creating JobRequest with the corresponding builder class and scheduled this request with the JobManager.
  • Communicated with Calendar AP and content providers to read calendar events plus confidential information, read contacts, read web bookmarks, and history.
  • Refined and improved performance of the app using SonarCube, Network profiler, CPU, and battery profilers.
  • Developed update patches, modules, and components to mitigate security risks.
  • Worked with other developers, designers, and product/business managers to develop new features consistent with product roadmap.
  • Created frameworks and automation in the development process to maximize build efficiency and secure solid code.
  • Maintained the Session Management for the app and supporting screen orientations.

Confidential, Newark, NJ

Android Engineer

Responsibilities:

  • Coordinated with Sr. Developer on Apache Commons Codec software for implementations of common encoders and decoders such as Base64, Hex, Phonetic and URLs
  • In corporate StickyListHeaders library to integrate section headers in ListView.
  • Worked on Apache HttpMime API module to support MIME multipart encoded entities.
  • Provided development support to the core team, troubleshooting some complex iOS / AIR / Android camera extension debugging for a specific project on a short-term basis.
  • Coded to implement the Observer pattern, the Iterator pattern, and functional programming
  • Used Git for source management
  • Used OkHttp for exchange data & media through HTTP protocol.
  • Worked with EventBus library for simplifies communication between Activities, Fragments, Thread, Services, etc.

Confidential, NY

Android Developer

Responsibilities:

  • Refactored unorganized spaghetti codebase into MVC architecture following SOLID principles.
  • Communicated with backend server using Volley and make multiple concurrent network connections with support for request prioritization.
  • Defined deep links with account details and third-party implementation.
  • Made a distinction between development and production versions of the app each with their distinct credentials and settings in the backend using Urban Airship.
  • Fixed memory leaks and configured data offline usage, push notifications, content providers, multiple form factors, accounts, and sync on Android.
  • Decreased memory leak by 90% using AsyncTaskLoaders, weak References and LeakCanary tool.
  • Implemented Cart Calculator algorithm to abstract all the logic of network retrials, error handling and callbacks optimization using queues to avoid directly calling API endpoints from the activities.
  • Increased security in local SQLite databases with SQLCipher encryption and decryption.
  • Created navigation and refactoring static fragments with Fragment Transaction and handling the backstack for a better experience.
  • Resolved intra-library dependencies and replaced the standard System.loadLibrary call using ReLinker library.
  • Used Android content providers for implementing features like sending E-mails, sharing using Facebook, Email, Twitter, SMS, etc., from the app.
  • Used the SQLiteOpenHelper to connect with the local database and perform CRUD operations.
  • Coded Custom Views and animations as per iOS app prototype and implement Android components to specifications.
  • Performed bug fixing from the tickets assigned in JIRA and worked independently on most features, reporting to the team leader daily.

We'd love your feedback!