Lead Android Developer Resume
New York, NY
SUMMARY:
Senior Android Developer with 6 years of experience in Native Android, strong knowledge of java concepts and deep understanding of Android main components . I enjoy working as a contractor as I always encounter new challenges that grow me professionally
TECHNICAL SKILLS:
Espresso, Mockito, Jenkins, Circle CI, GitFlow, Multithreading, Push notifications, UrbanAirShip, BLE, IoT, Google Assistance, Google Home API, Zeplin, Kotlin, Firebase, Code Reviews, TDD, BDD, Cucumber, Calabash, JetPack, Fragments, MaterialDesign, ContentProviders, BroadcastReceivers, Services, Manifest, Permissions, ActivityManager, LocationManager, NotificationManager, ResourceManager, Widgets, UI, UX, FloatingActionButton, RecyclerView, CardView, CoordinatorLayout, ConstrainLayout, RelativeLayout, HandlerThread, Asynctask, Thread Pool, IntentService, Web Services, http, https, RESTFul, SOAP, json, xml, Volley, Retrofit, HttpConnection, Picasso, OAuth, Dagger2, Dependency Injection, RXAndroid, Reactive Programming, Butterknife, Firebase, Scrum, Agile, Waterfall, XP, Jira, Trello, Confluence, Github, BitBucket, SVN, Data Binding
EMPLOYMENT:
Lead ANDROID DEVELOPER
Confidential, New York, NY
Responsibilities:
- Led the “like” feature, which included all entities (movie, music, photos, links, book and places) using new Google Architectural components
- Work on paid product flavour using Kotlin Default and named arguments, Smart cast, Data class, courtines, DSL and Extension functions
- Avoid intricate stateful programs, using clean input/output functions over observable streams using reactive programming mechanics
- Utilize a Room local and a remote database library for persisting the information though application launches and devices
- Led the design refactoring introducing scrollviews, animations and transitions to the details of all entities
- Led the integration of the “chat” feature using CustomView, RecyclerView, shared preferences and the camera to share photos
- Implemented the introductory screen using dynamic slider and shared elements, fragments, transitions, animations and material design in order to maximize the UI/UX and increase the amount of users for the application
- Implement the vertical drawer for music and movie posts using coordinator layout, transparency and fragments
- Include Pagination using Paging Library in recyclerview to consume less network bandwidth and fewer system resources in data requests
- Perform code reviews with Crucible tool, create checkstyle, merge pull request in GitFlow process with Jenkins as CI tool
SR ANDROID DEVELOPER
Confidential, Pittsburgh, PA
Responsibilities:
- Led the team in the implementation and integration of multiple choice question with images to tests and lessons utilizing custom view, resources manager and custom card views
- Code the new features in MVVM architecture using Data - binding
- Pair-program with Lead Developer in the implementation and integration of the “pronounce words on touch” feature which involves MediaPlayer class and an IntentService
- Widely implemented design patterns such as Builder, Facade, Observer, Mediater, Factory, Dependency Injection with SOLID principles
- Led the “Progress Sharing” feature which utilizes Volley network library for network calls to send progress to a classroom
- Implement and integrate the “translate word on touch” feature which utilizes a CustomView to show different translations
- Refactor the generic translation question to use MVVM instead of MVP
- Migrate main menu list view to a recyclerview in order to improve performance of the activity
- Implement the animated feedback between questions
- Migrate database from ORMLite to Realm database to synchronise with Firebase Real time database
- Create Mockito unit test cases to test Presenters, method interactions and mock model in MVP architecture
- Perform background sync using JobServices and IntentServices to sync Firebase data and store locally in GreenDAO database
- Perform functional, behavior testing using Robolectric and Espresso
NATIVE ANDROID Coder
Confidential, Southlake, TX
Responsibilities:
- Code the MainScreen in which a gridview is used in order to show the user all the features he is capable of doing
- Implement the “access your data” feature in which utilized Retrofit for the network calls with RxJava 10 and synchronize to Realm local database
- Implement the “What is new” feature which is welcome screen which tells the user the new features and bug fixed on the first launch of application, this feature was utilizes a transparent activity
- Implemented the “new vehicle” feature where the user register his car to manage. Spinners, scrollview are used in the UI and a content provider in the backend to save to database
- Implemented the “more options” menu which has customized layouts including colorful icons, text with customized font type and animation when option selected
- Included Dagger dependency injection to inject instance with modules, components, scopes and address separation of concerns
- Resolve camera, location, external storage dangerous level persmiison to target Android M version and above
- Performed automated UI testing using Espresso and UI Automator
- Independently replaced volley with RxJava/RxAndroid to get JSON from multiple APIs to download widest range of data in customized gridview
- Use Espresso for the UI testing and Mockito for mocking the API call(Mockserver)
Android developer
Confidential, New York, NY
Responsibilities:
- Work on presentation layer in the Uncle Bob’s 3-Tier MVP Architecture
- Co-ordinate on improving serialisation/deserialisation of XML data using Jackson XML parser to get Vetted and fully insured pet sitters list from server
- Work in the “for you” feature which is a list of the news / recipes / life tips / quizzes that is most likely for the user
- Work in integrating shared preferences, and a local SQLite database using content providers
- Closely worked with designers/zeplin tool for vector drawables, API developers, iOS techies in an Agile/Scrum environment
- Work in the share in Twitter results for the quizzes, involving Twitter SDK
- Work in the share in facebook results for the quizzes, involving facebook SDK with deep linking feature
- Optimise image loading with Picasso, removed bitmaps legacy code and replaced listview with recyclerviews in entire app
- Access and modify private calendars and events, updates using Google Calender API
- Implement Disk LRU Cache to cache data in a directory on the filesystem
- Utilise Facebook Stetho, Debug tools, Jobscheduler, Services and Android Profiler to identify issues and enhance the performance
Mobile App developer
Confidential
Responsibilities:
- Improved the image loading time by using LruCache class on the Support Library
- Work in the paybill feature, adding the way to retrieve information from the remote server
- Program the “find your ATM” feature which search for the ATM and offices near you and display the maps with those locations
- Work on implementing the “contact us” feature which uses an intent to send an email to customer service
- Implement the push notification for the transaction event using MixPanel services
- Pair-Programm to work in the automated pay bill feature using Amazon In-App purchases
- Implement HTTP client (GET, POST, DELETE, PUT) to consume RESTful web services in listviews
- Implement binding services from activities and the use of communication with services using java threading for background processes and loaders
- Create View Holder Pattern in ListView Adapters to improve the memory 2013
Android Programmer
Confidential
Responsibilities:
- Implement the introductory screen with viewpager and fragments
- Focus largely on asynchronous processing and multithreading using Download Manager, Asynctask Loaders and Intent Handlers
- Provide backward compatibility to the application using support packages, fragments, external libs, ActionBarSherlock and ActionBarCompact
- Implement the connection to the google Maps API for displaying the hotels near to user and use custom views to showcase the cost of the options
- Implement the listing sorting with cost as parameter on the main hotel list
- Work in the Hotels layouts for the main hotel list and also for the hotel details