Lead Android Developer Resume
New York, NY
SUMMARY
- 7+ years of experience in Android.
- 5 published Android apps.
- Experience using Android Studio in Android app design and development.
- Skilled coding new Android mobile apps from scratch as well as refactoring, transitioning, and revising existing apps.
- Demonstrated skill in Android mobile app IDE coding in Java and Kotlin.
- Experience converting Java arrays to mutable and immutable lists to reduce code overhead and provide consistency.
- Experience refactoring Java code to Kotlin, eliminating null pointer exceptions.
- Experience implementing new features in Kotlin.
- Use RxJava to handle teh responses from teh web services.
- Work closely with Project Managers, Product Managers, and Stakeholders to ensure app developments meet specifications and successfully drive corporate strategy.
- Mentor developers about best practices.
- Use sync adapters to load changed data from server and to send modified data to server from app.
- Work with GSON and Jackson library to parse JSON files on teh Android project.
- Use intent services and Retrofit with OkHTTP3 to handle calls and processed JSON objects with GSON converter.
- Use of a variety of views: CardViews, RecyclerViews
- Implement LRU Cache to increase teh performance of ListView scrolling.
- Develop UI for both landscape and portrait Screen orientations using qualifiers.
- Use of Android JetPack for Data Binding to communicate between ViewModels and UI components.
- Use of Reactive - X RxJava and RxAndroid.
- Hands-on with Google Material Design, TextViews, WebViews, Navigation Drawer, Floating Action Button, Widgets, Compound View, Custom View, RecyclerView, View Pager and Tab Layout, Fragments.
- Experience writing test cases and testing with Robotium, Junit, Espresso, Mockito, etc.
- Worked with continuous integration servers (Jenkins, Hudson, Travis) and implemented simultaneous testing on various devices.
- Experience with Model-View-Controller (MVC), Model-View-Presenter (MVP), and Model-View-ViewModel (MVVM) software architectures.
- Apply design patterns such as Delegation, Fac ade, Abstract Factory, Builder, Singleton, Observer, etc,
- Work with cross-functional teams to ensure excellence in app performance and user experience.
- Oversight of offshore development teams to maximize productivity and coordinate tasks.
TECHNICAL SKILLS
Architectures: Model-View-Controller (MVC), Model-View-Presenter (MVP), and Model-View-ViewModel (MVVM)
Design Patterns: Delegation, Fac ade, Abstract Factory, Builder, Singleton, Observer
Development Platforms: Android SDK, Java SDK, Firebase
Methodologies: Material Design, Agile Development
Threading: AsyncTask, IntentServices, Handlers, Loopers, Loaders
Back-End Integration: Retrofit, Volley, OKHttp
UI/UX: Navigation Drawer, RecyclerView Animator
Push Notifications: Google Cloud Messaging (GCM), Firebase Cloud Messaging (FCM)
Energy & Memory Management: BlueTooth Low Energy, ARC, Dalvik
Programming Languages: Java, Kotlin
IDE: Android Studio, Eclipse
Development Tools: Git, GitHub, JIRA, Jenkins, Fabric
Android Development: Retrofit, JobScheduler, EventBus,, Bluetooth Low Energy, Push Notifications, Dagger, MediaPlayer, RxJava, Google Analytics
Image Management: Picasso, Glide, Fresco
Databases: SQL, MySQL, SQLite, Firebase, Parse, JetPack
Testing: Robotium, Espresso, JUnit, Charles Proxy
Continuous Integration: Jenkins, Travis, Hudson, Bitrise
Dependency Injection: Dagger 1 Dagger 2, Butter Knife, IcePick, AndroidAnnotations
Web Services & Scripting: REST, SOAP, JSON, GSON, XML, AJAX
Debugging: DDMS tool, ADB, LeakCanary, Firebase Crash reporting, Crashlytics
PROFESSIONAL EXPERIENCE
Lead Android Developer
Confidential, New York, NY
Responsibilities:
- Applied KanbanandScrumusingTargetprocessmanagement software.
- Built application using MVVM architectural patterns.
- Implemented Android Architecture lifecycle aware components and use LiveData to build data objects dat notify views when teh underlying database changes.
- Programmed in Kotlin supported by RESTful services.
- Programmed in Java supported by RESTful services.
- Designed/developed app using API/SDK and business embedded logic to achieve mobile app’s desired functionality.
- Applied Android JetPack components such as Room, Navigation and LiveData.
- Participated in software design, estimation of development tasks, testing, QA process, pair programming, troubleshooting and codedebugging.
- Downloaded initial settings data usingRESTFulWS and posting values to APIserver.
- Implemented TDD usingMockitoand Espresso testing tools to test uses cases in business and abstract layer of thearchitecture.
- Created Custom Views for Scrolling, Customized items, Customized label, Eventlisteners.
- Applied Apache CommonsCodecsoftware to provideimplementationof common encoders anddecoderssuchas Base64,Hex,PhoneticandURLs.
- Configured a new Android wear application using Node API and WatchViewstubUI.
- Replaced SQLitewithRoom database.
- Mentored a junior developer.
- Used reactive frameworks such as RxJava, RxAndroid, RxBluetooth, and RxKotlin.
- Used Jenkins for continuous integration (C/me).
- Configured Git and Bitbucket servers as teh software version control tools.
- Used Jira for ticket, make sure dashboard everyone is assigned work and backlog defect tickets are single digits.
- Debugged and fixed access to Bluetooth settings, network connectivity, Wi-Fi Multicast reception, and connect and disconnect from Wi-Fi.
SENIOR ANDROID MOBILE APP DEVELOPER
Confidential, New York, NY
Responsibilities:
- Applied pair programming within an Agile project execution framework complete with daily Scrums.
- Architected teh app using Data binding library to operate with observable data objects, generated customized binding classes, and supported two-way data binding.
- Used Android Studio to develop teh screens for teh application using MVVM design pattern.
- Programmed code in Java and Kotlin.
- Developed new features in Kotlin to reduce codebase with data classes and extension functions.
- Implemented several libraries for Kotlin effort such as RxKotlin, Kotlin-kapt and Android KTX.
- Applied automatic backup support via Google Drive.
- Established continuous integration using Jenkins CI.
- Synchronized data between Android device and web servers.
- Implemented automated execution and integrated account management and authentication into data transfer.
- Implemented a rich user interface per UI/UX and Google's Material Design specifications. Integrated Android-Query (AQuery) library for asynchronous tasks and manipulated UI elements to display distance traveled for mileage reimbursement.
- Integrated Google Play billing service API for buy one-time products, query for in-app product details, and test acnoledging purchase with license testers.
- Enabled teh user to search and pinpoint desired listings based on multiple varying inputs via SearchView and Content Provider allowing for customized findings.
- Designed and integrated a "Terms and Conditions" screen where teh user can review, in detail, teh "Terms of Service" and "Licensing Agreement".
- Validated asynchronous operations whose results affect subsequent operations in a UI test using Idling Resource Espresso.
- Provided backwards-compatible notification API with Wear and Auto support, media playback and routing. Created modules, components and custom scopes using Dagger2 and perform loose coupling.
- Worked with ScribeJava OAuth library to sign HTTP messages and request tokens from an OAuth service provider.
- Converted Relative/Linear layouts to ConstraintLayouts to flatten teh view structure and improve performance.
- Created a generic Retrofit wrapper class which are put in an internal library to replace Volley and in corporate RxJava 2 for API calls.
- Coupled with Retrofit and RxJava to enable teh UI to perform flawlessly and reactive to changing data.
Android Application Developer
Confidential, Baltimore, MD
Responsibilities:
- Assigned to a dev team dat carried out teh software development lifecycle (SDLC) in alignment with an Agile project methodology dat included teh practices of Scrums and Sprints.
- Utilized Eclipse IDE and teh Android Development Tool (ADT).
- Implemented MVP architecture and various design patterns (Singleton, Proxy, Observer, Façade).
- Programmed in Java and Kotlin using Android Studio IDE.
- Developed new Kotlin modules and migrated existing code into Kotlin.
- Added push notification features with Firebase Cloud Messaging for Android.
- Utilized teh Android 3rd-party libraries: RxJava, Butterknife, and Retrofit.
- Added selectors and animation effects on UI/UX elements to enhance teh User Experience.
- Built new Android features to enhance teh UX for consumers.
- Tested teh user interface using Espresso.
- Debugged and tested teh application with Espresso, and Junit.
- Wrote unit tests in Junit and Mockito.
- Constructed teh user interface by using list view, custom view, compound view and various layouts.
- Created innovative solutions in media streaming and mobile user experience.
- Implemented Dagger for Dependency Injection and to halp with teh unit testing.
- Helped implement full social network integration with Facebook, Twitter, and YouTube SDKs.
- Coded Connection and Operation error handling module to catch display messages to users during Bluetooth communication.
- Used Bluetooth low energy and Leak Canary to solve mobile networking performance issues
- Used Activity, Intents, Fragments, Services, Broadcast Receivers, notifications, Content Providers, and Media Players for building teh app.
- Created Widgets to halp customers manage teh launcher
- Used Picasso for loading images and management of media.
- Handled fragment data retention to ensure data integrity in Android on-screen rotation, with teh onSaveInstanceState and onRestoreInstanceState methods.
Android Developer
Confidential, Santa Monica, CA
Responsibilities:
- Worked on a team of 8 developers and 2 QA specialists.
- Collaborated with cross-functional teams to define, design, develop and deploy app.
- Accepted joint responsibilities with teh team for converting teh Product backlog into 'Done'.
- Contributed to continuous improvements in teh team for greater efficiency, quality, and productivity.
- Worked existing clean code architecture in MVP and created shopping module, add-to-basket module, and customer profile module.
- Programmed in Java and Kotlin using Android Studio.
- Assisted refactoring teh codebase from Java to Kotlin.
- Used reactive frameworks such as RxJava, RXKotlin, and RxBluetooth.
- Worked closely with UI/UX team for doing Material Design and applied custom animations on views and assigned proper spacing for iconography.
- Created multiple services for connecting with company backend to retrieve user account details, billing, and payment.
- Implemented Google Play Billing system and configured BillingClient and override on ConsumeResponse in teh MVVM design pattern.
- Included DaggerMock testing library to test Dagger components in Unit test cases in TDD manner for presentation layer.
- Programmed modules, components, scopes to inject view models, and network objects using Dagger Creational pattern.
- Replaced Volley library with RxJava, Retrofit library to make asychrous API calls to get user-profile and monthly stats data in custom view.
- Added custom deep links dat teh user will be sent to if teh app is already installed and leveraged teh power of Google Services to send invites to friends.
- Enabled Google Pay to process payments from users, integrate Payment data cryptography for merchants and use sample tokens to test integration.
- Performed AIDL and defined teh programming interface dat both teh client and service agree upon to communicate with each other using inter-process communication (IPC).
Android App Developer
Confidential, Rockaway, NJ
Responsibilities:
- Followed Full Agile methodology: Scrum, Planning, Grooming and Demo ceremonies strictly followed.
- Produced teh Android app in Android Studio with coding in Java, and both native and third-party frameworks.
- Applied MVP architecture and design patterns Singleton, Observer, Factory, Façade, Proxy, and Builder.
- Created wireframes using Adobe Photoshop for app design and architecture.
- Worked effectively with UI designers who are obsessive about pixel perfection.
- Used instance handlers for Java threading separated from teh Android user's interface thread.
- Used native and third-party technologies to optimize teh app functionality including Java, Parse, Volley, SQLite, Fragments, Picasso, Android Studio, JSON,SQLCipher, Spongy Castle, Git, Jenkins.
- Optimized RESTcalls for better performance using differentAndroid appthreads.
- IntroducedAndroidNavigation Drawer and Tabs, as well as custom and compound views to teh project.
- Enhanced teh UI/UX to follow theguidelines provided by AndroidMaterial Design.
- Utilized Git version control tool as source control management system.
- Integratedsocial networking APIs such as Facebook and Twitter into teh Android app.
- Introduced Push Notifications to keep teh user engaged with Parse for Android.
- Tracked project planning and development lifecycle with JIRA.
- Appliedexpertisein development ofwell-designedAndroid styleuser interfaces.
- Worked with design team to createa user-friendly interfacefor theAndroidapp.
- Trained and mentored new team members on teh team in coding best practices, like memory management, network consumptionin Android.