Al Lossada
Senior Android Developer
412-***-****/ adhhvh@r.postjobfree.com
OBJECTIVE
Innovative Senior Android Mobile Application Developer with 8+ years of experience designing, developing, testing, and maintaining Android applications with 50K+ downloads, looking for new Corp-to-Corp (C2C), Contract-to-Hire (C2H) and 1099 Contractor project opportunities in the mobile space.
SKILLS
Architecture
MVVM/ MVP
Kotlin
Java
NDK
MixPanel
Google Home
Google Assistance API
Play Services
Android Keystore
Retrofit
SQLIte
FSM
BLE
WiFi Protocols
ExoPlayer
Material Design
Zeplin
TDD
BDD
Mockito
Espresso
Firebase
Robolectric
AWS
JetPack
LiveData
VOD
Bluetooth BLE
OAuth
AES
Encyption
Dependency Injection
Butterknife
Reactive Programming
RxAndroid
Agile
Scrum
XP
Push Notifications
Patterns
Instrumented Tests
RESTful Web Services Consumption
Bitbucket
GIT
GitHub
GitLab
SV
Jenkins
MVC
SOLID
OOP Design
Unit Testing
Multithreading
Jira
OAUTH2
ZXing
CARD.IO
Stripe
PayPal
Waterfall
AsyncTask Loaders
Coroutines
RxJava
SUMMARY
Familiar with OOP design patterns such as Façade, Abstract Factory, Builder, Singleton, Observer, MVC, MVP, MVVM, Protocols & Delegation, etc.
An understanding and ability to exploit Android features and APIs (Background services, notifications, location, etc.)
Team player with the ability to work autonomously and in different set of teams, from large to small deployment
Familiarity with Java, Android Studio/Gradle, using multiple target environments and deploying apps to the Play Store
Experience of writing & maintaining unit tests; mocking frameworks and enthusiastic for test-driven development
Experience developing video playback technologies
Ability to work with UI/UX designers and also interacting with back end developers
Experience of BDD and TDD. App signing, rich UI development, HTTP, JSON, XML, SSL security, sockets, Wi-Fi, Material Design principles Agile development using JIRA
An understanding of Android Auto, Android TV and Google Home API with third-party analytics services
Experience designing for Tablets and other big screen devices in Android
A firm understanding of building Android mobile applications that utilize web services (REST, HTTP-based, XML, SOAP, JSON or other services)
Experience developing highly efficient Java code and view layouts and the ability to diagnose performance bottlenecks in Android development
Self-motivated and proactive with demonstrated creative and critical thinking capabilities
EDUCATION
Bachelor of Science in Computer Engineering
Florida International University School of Engineering / Miami, FL
CONSULTING PROJECT EXPERIENCE
Branding Brand / Bed, Bath & Beyond / Pittsburgh, PA
Sr. Android Developer
September 2019 – Present
Apps: Bed Bath and Beyond / Bed Bath and Beyond Baby
https://play.google.com/store/apps/details?id=com.bbby.bedbathandbeyond
https://play.google.com/store/apps/details?id=com.bbby.buybuybaby
Implemented material design driven Views to for all UI design changes.
Made sure design was up to date with what is currently relevant in the Android world.
Organized and managed styles and themes to collisions and code reusability amongst other developers.
Helped React Native developers create plugin functions in Android app to fetch information for the React side.
Used Git and GitHub for version control and followed branching strategy for features and issues.
Worked closely with designers providing feedback to promote a Native Android User Experience.
Used Adobe Omniture and Firelytics APIs to handle analytics tagging.
Used Firebase to create and enable app’s deep links and existing ones.
Worked closely with QA to fix introduced bugs and implement solutions for old ones.
JPay / Miramar, FL
Sr. Android Developer
March 2019 – September 2019
Apps: Lantern App / KA Lite / Ashland (private distribution only)
Manage the development of Android educational apps for prison inmates, leveraging prison-hosted Windows Kiosks, Wi-Fi and RESTful API calls/consumption. Given the nature of the app, security is essential. Work on many tasks involving encrypting downloads and implementing file signature to files to mitigate tampering.
Agile framework with daily SCRUMS
Worked more on a release base deadline than by sprints
Team consisted of 2 .NET developers, 1 android developer and 1 QA
Worked on JPay’s Lantern, Ashland app and KA Lite (Khan Academy)
Included Wi-Fi functionality to Lantern App
Handled large amount of sequential file downloads through a local download manager
Interacted with exposed Canvas Student APIs
Updated UI and UX with help of a designer
Implemented themes and styles to pertain to android material design standards
Created new features from scratch using android jetpack components
Worked closely with QA to ensure product quality
Refactored old code to decouple views from business logic using MVVM
Performed pair programming with tech lead to debug issues
Used postman to test calls prior to implementing them in android
Used collaborator and bitbucket to perform and assign code reviews
Used git has a source control
Worked on a custom android ROM with security restrictions
Tablet used was custom made, JP5
Worked closely with the support team to fix bugs and crashes
Improved background processing time by implementing concurrent threading libraries such has RXJava
Implemented solution for large downloads via a URL through the Retrofit library
Implemented file signature using a platform service to ensure file download authenticity and integrity
Worked on a script that changed the file permissions of a folder’s content periodically in the tablet’s internal memory to allow for open accessibility amongst apps
CVS Pharmacy / Scottsdale, AZ
Sr. Android Developer
August 2018 – March 2019
App: https://play.google.com/store/apps/details?id=com.caremark.caremark
Support troubleshooting and debug applications, working with the testing team to optimise application performance. Ensure projects are delivered on time and to a high standard. Take part in code reviews for other developers. Contribute to continuous improvements in the team resulting in greater efficiency, quality, and productivity. Develop and produce functional solutions in accordance with architecture design standards and code standards.
Help with migration of code from Angular to Native Android Kotlin language
Employ tagging using adobe tagging for business analytics on app usage and marketing information
Refactor spaghetti code with new JetPack architectural principles using ViewModel, LiveData MVVM components and participate in architecture reviews
Locally store prescription history in Room database with Account Information; shipping and billing information, manage family access, and reset password
Create Observables/ flowable/Single sources, subscribing, disposing, multi-threading using schedulers and avoid API calls memory leaks using RxJava library
Remove UrbanAirship and replace with Firebase push notification services to send daily walk reminders to users
Polish the magnets feature and adding analytics tags
Handle code merger and image manipulation from other developer in photo project to release branch at the end of sprints
Use CVS API’s to translate strings, handle location services and post customer information to CVS servers using Reactive Programming and Retrofit libraries
Create flows for new photo products, refactored and debugged old code to use up to date coding standards in photo
Work with third party API called Snapfish to handle with information exchange, photo orders and ids
Solve ANR crashes om the new release
GEICO Mobile / Woodbury, NY
Sr. Android Developer
April 2017 – July 2018
App: https://play.google.com/store/apps/details?id=com.geico.mobile
Participate in technical and design discussions with technical executives at strategic partners to speed up adoption and ensure best practices during implementation. Participate in fast-paced development cycles; have completed 100% of deadlines ahead of schedule. Work proactively to remediate adverse customer experiences. Assist with the deployment of Android application code to multiple package targets.
Independently work on “Request roadside service” and “Pay and mage bills” User-story in consult with Tech lead
Work on paid product flavour using Kotlin Default and named arguments, model classes, delegates, Smart cast, Data class and Extension functions
Integrate Urban Airship in new features for messaging and content delivery, including Push Notifications, Rich Media Messaging, In-App Purchase and Subscriptions.
Refactor View layer with new Architectural components from MVC using lifecycle aware components and Room database with SQLCipher encryption
Upgrade to PayPal Braintree's Android SDK to accept card and alternative payments to pay & manage bills for car insurance
Authenticate users via fingerprint scan and implement the user interface for the fingerprint authentication flow for new insurances
Work on AndroidWatch module to display notifications and send data from phone
Heavily code using ReactiveX for asynchronous programming with observable streams for API’s using flatmap, filter, zipalign, map transformational
Encrypted ID card details in Android Keystore system to store cryptographic keys in a container to make it more difficult to extract from the device
Work in Test-Driven Development to write test cases in Pay Bills ViewModels and automated UI test using Espresso for View Policy feature
ParkMobile / Atlanta, GA
Sr. Android Consultant
June 2016 – March 2017
App: https://play.google.com/store/apps/details?id=net.sharewire.parkmobilev2
Collaborate daily with the offshore implementation team. Monitor the app post-release to ensure that it is working as expected. Collaborate with the wider team (developers, analysts, product owners, etc.) to produce acceptance criteria for user stories, providing technical and domain expertise to help drive decision-making. Work proactively to remediate adverse customer experiences.
Emphasize business logic and leave framework details under the hood, address separation of concerns using Uncle Bob clean code architecture
Perform migration from GCM to Firebase push notification services to send notifications to tell when a paid parking will expire
Incorporate ThreatMetrix External SDK detect any breaches to the host application, Strong Device Identification and Send events showing high-risk signals to Firebase backend cloud database
Independently work on Card.io credit card scanning library integration to Pay for parking and reservation
Map parking spots on Google Map with Clusters API, find the best parking spots and get car location with Google Play services Location API and GeoCoder API
Pair Program to perform password reset, verify email, and recover email using Firebase API
Define API contracts and develop against stubbed/mocked end-points with Mockito with additional beta testing using Google Cloud testing mechanism
Use RxPS, RxJavaPriorityScheduler Scheduler library in Reactive environment to parse multiple streams of data concurrently
Replace Google Analytics with Firebase SDK for push notifications, Analytics, Crash Reporting and Authentication services
Create Schedulers mock using RxJava TestScheduler in unit tests and trigger TestScheduler to drive function behaviour as expected
Expose data via a Content Provider using Room to access contacts and gallery
Migrate SQLIte database to Realm 3.0 local caching database to store parking expenses, parking data and account information
Tile / San Mateo, CA
Bluetooth Android Developer
April 2015 – May 2016
App: https://play.google.com/store/apps/details?id=com.thetileapp.tile
Work together with the designers to enhance the application for the Android platform, focusing on continuous improvement over time. Improving test coverage, procedure and documentation. Write and maintain existing unit tests (TDD). Help drive efforts to adopt BDD.
Conduct meeting with vendor to integrate Branch SDK in the app to increase mobile conversion, retention, and engagement through deep linking and user routing
Work on Generic Attribute Profile (GATT) protocol BLE technology to connect Tiles with Bluetooth 4.0 compatible devices
Work around BluetoothAAdapters, BluetoothServices, Oral B UUID Characteristics with BroadcastRecivers, EventBus and IBinder interface
Resolve camera, location, external storage dangerous level permission to target Android M version and above
Work on Fused Location API Services to record the last known location of Tiles, based on your phone’s geo -location data
Use NDK to reuse native-code libraries written in C/C++languages to communicate with base Bluetooth framework classes
Use Espresso for instrumentation testing using Assertions, Matchers and Actions for 80% view code-coverage
Work on Google In-app Billing and Amazon in app purchases to provide checkout processing for to renew memberships and buy tiles
Conduct code review activities with the members of the development team using Collaborator tool
Create Dagger components and subcomponents to inject the needed dependencies into different Android app fragments, view models and components
Conduct integration testing with Robolectric framework and behavioural testing with Robotium framework
CBS Sports Fantasy / San Francisco, CA
Android Developer
August 2014 – March 2015
App: https://play.google.com/store/apps/details?id=com.cbs.sports.fantasy
Ensure the performance, quality, and responsiveness of app and server. Collaborate with team to define, design, and ship new features. Identify and correct bottlenecks and fix bugs. Help maintain code quality, organization, and automatization.
Work in MVVM architecture using Data Binding Library to bind UI components in layouts to data sources in using a declarative format with one-to-many mapping between various Views and one View Model
Create customised compound view with Listview headers to display League standings and power rankings
Download XML Weekly matchup recaps data, Scoring previews and Player profiles data from backend using Jackson Parser with Volley library
Perform static code analysis using PMD, Findbugs, Checkstyle, Gradle and Jenkins reports
Work in XP environment to authenticate users, sync profile data with Amazon Cognito Sync and Transfer files with Amazon S3 Transfer Manager
Work with Conviva SDK for improved quality of experience (QoE) and video-streaming quality
Incorporate the tab navigation using the View Pager Indicator third party library
Replace old video view with ExoPlayer API for QVC's video streaming media protocols: HTTP Live Streaming (HLS), RTMP and RTSP
Download and cache remote images in a memory efficient manner using Fresco Facebook library
Independently work on Depth charts, roster trends, and player projections user story
Mango Health / San Francisco, CA
Native Android Mobile Developer
July 2012 – March 2014
App: https://play.google.com/store/apps/details?id=com.mangohealth.mango
Work closely with designers, API developers and iOS techs in an Agile/Scrum environment. Fix bugs and improve application performance. Build scalable apps across multiple platforms and devices/resolutions. Liaise closely with the designers to improve and enhance UX/UI. Use Zeplin for vector clickables.
Configure GCM server for push notifications to send advance warning when it’s time to order a refill
Create a custom view with onLayout, onDraw and onMeasure methods to display date and set custom reminders to drink water, record mood, check blood glucose and take your blood pressure
Parse medical history logs json data from backend using AsyncTask and display in ListView with view-holder pattern
Implement a WebView control to reuse some legacy web application functionality
Communicate with Google Contacts API to create new contacts, edit or delete existing contacts, and query for contacts that match particular criteria
Code in MVP architecture with FasterXML Jackson serialization and configuration framework converter; with eventBus to communicate with different presenters
Implement beta test coverage, distribute beta versions, collect live crash reports, and get feedback from real users using Hockey App
Develop the ability to scan QR codes within the application using the ZXing Library
Add the use of Google Wallet payments to buy products and unlock advanced features
Add Interceptor-builder.cacheControl to force caching of network request for max-age=3600
Work with Google GData client library to access Google APIs using JSON and OAuth 2.0
Implement multi-language support using XML for simple menus and web services