Senior Android App Developer Resume
Benton Harbor, MI
SUMMARY
- Kotlin programming development experience.
- Java programming skill.
- Skill with frameworks such as RxKotlin, RxJava, RxAndroid, RxBluetooth.
- Full breadth usage of Android Studio.
- Contribute to design, architecture, and technical strategy.
- Architectures include MVVM, MVP, MVC.
- Strong understanding of the Android framework, best practices, and design patterns.
- Firm understanding of building mobile applications that utilize web services (REST, HTTP - based, XML, SOAP, JSON or other services).
- Skilled implementing fragments, diverse layouts, animations, Material Design, Compound Views and Custom Views.
- Strong knowledge in Android multithreading frameworks: AsyncTaks, IntentServices, Handlers, Threads, Runnables, Loopers.
- Experience using GIT/GitHub for Source Control.
- ADA compliance for application development
- Experience with web related technologies, including JavaScript, HTML 4/5, AJAX, JSON, XML.
- Good knowledge OS fundamentals with the ability to apply it in the context of modern operating systems (Linux, OS X, Windows Server 2008/2012).
- Experience with Android performance tuning and crash reporting applications.
- Able to optimize the technical architecture and technical debt of the Android app.
- Created logins, embedded tweets using the Twitter API.
- Passionate about best Android design and general UI/UX best practices.
- Performed Espresso, JUnit, Mockito and simulated design patterns in Android to test and develop applications.
- Managed the implementation of dependency injection in Android with Dagger to sped up the unit testing process.
- Use of multiple MBaaS (Mobile Backend as a service) and cloud integration tools like Parse, Firebase, Google Cloud Services, Amazon Web Services.
- Ability to ask the right questions, provide feedback to stakeholders, break down tasks, and create a plan to achieve the intended result.
- Pro-active fast learner, self-motivated, proficient in programming logic and easily adaptable to new technologies.
- Self-motivated, always enjoying a good challenge and thriving under pressure.
- Exceptional communication, project management, and organizational skills with the ability to build positive relationships with boards and stakeholders, senior executives, all levels of staff, and clients.
- Continuously research, test, and implement new techniques, frameworks, and utilities, and apply to Android development.
- Apply Google’s best practices targeted to mobile environments: use of networking, memory management, battery status, responsive and intuitive design, managing multiple screen sizes, identifying app installations, internationalization.
- Design schemas for and deploy SQL and MySQL servers.
- Create initial set ups of multiple continuous integration servers to help the build creation process (Travis, Jenkins, Circle-CI).
- Implementation of multithreading using Kotlin Coroutines.
- Participated in all phases of the Android development life cycle (Planning, Analysis, Design, Develop, Documentation, Test, Deployment, Hypercare).
- Implementation of Android Accessibility Services for ADA compliance.
- Principles, handlers, and Java threading to match the provided specifications and needs of the Android project.
TECHNICAL SKILLS
Programming Languages: Java, Kotlin, php, HTML, CSS
Frameworks: Android Jetpack, Firebase
IDEs: Android Studio, Eclipse, Visual Studio
Change Management: Git/GitHub, SVN, Jenkins, Travis CI
Methods: Material Design, Agile/Scrum, Test Driven Development (TDD)
Issue Tracking: JIRA, Jenkins, Atlassian Suite
Architectures: MVC, MVP, MVVM
Design Patterns: Singleton, Dependency Injection, View Holder, Builder, Adapter
Testing: Espresso, Robolectric, Mokito, JUnit, Selenium, Appium
Web Services: JSON, REST, SOAP, XML, AJAX
Software: MS Office (Word, Excel, PowerPoint, Paint), Adobe Photoshop, Maven, Gradle
Data Related Tools: Firebase, SQLite, Room Database, SharedPreferences, EncryptedSharedPreferences
Android Libraries, Frameworks and APIs: Jersey Library, open-source libraries, Google Maps API, Volley, Junit, Google Places, Retrofit, RecyclerView Animator, Location Services, FloatingActionButton, Google Cloud Messaging, Schematic, REST, Bluetooth Low Energy, NineOldAndroids, JobScheduler, Push NotificationsVersion Control: Git, SVN, GitHub, SourceTree, Tower, BitBucket
Native Java Frameworks: Java Swing, Ajax Swing, GWT
Operating Systems: Android, Unix/Linux, Mac OS, Windows
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 like ListView, RecyclerView, GridView and Gallery, Customized List views, Gallery widgets
PROFESSIONAL EXPERIENCE
Confidential, Benton Harbor, MI
Senior Android App Developer
Responsibilities:
- Worked with an Android development team in an Agile environment with 6 Android Developers and 8 iOS Developers.
- Implemented new Architecture Navigation Graph to map in App navigation across many app flows.
- Migration and refactored Java Code to Kotlin code.
- Refactored Architecture design pattern from MVP to MVVM.
- Created multiple SQL commands to update a list of favorites and query the results into the main thread.
- Implemented Android Jetpack Room Database implementation along with Kotlin Singleton implementation.
- Worked along with observable lifecycle aware components like Android Jetpack Livedata.
- Refactored fragments to CustomViews to reduce the handling of multiple callbacks and reuse layouts in multiple screens.
- Participated in approval PR team to ensure code coverage of 85% and enforced code quality using tools like Gerrit, CheckStyle and SonarQube.
- Closely worked with QA engineers to implement use cases and successfully refactor feature by feature.
- Wrote Functional, Unit, and Instrument tests using JUnit, MockK, and Espresso.
- Customized Exoplayer media to play favorites artist during sessions.
- Implemented Share API creating Intent choosers to share favorites locals through social media.
- Implemented Calendar API with custom Credentials for synchronize users’ calendar from an app entry.
- Worked closely with designers to enhance UI/UX and match Material Design for rebranding approach.
- Implemented search view engine to enhance fast search and provide customized data depending of user settings.
- Created API connection with Retrofit library and a Single source of truth repository.
- Implemented dependency inversion strategy creating components and modules using Dagger library.
- Participated in an Agile environment with sprint retrospective and consolidating code in Bitbucket repository.
Confidential, Redmond, WA
Senior Android Developer
Responsibilities:
- Applied “Clean Code” principles for app architecture, branching/versioning, release train, feature flipping and A/B test, CI pipeline, TDD, etc.
- Developed the feature to ‘Build your own address library’ and export reports in pdf excel and csv formats.
- Fixed crash loading very short trips and crash affecting some users when merging trips
- Created custom authentication usingOAuthConsumerandOAuthProviderservices and Signing HTTP messages and requested tokens from an OAuth service provider.
- Integrated external YandexAppMetricaSDK for ad tracking, usage analytics and crash analytics.
- Replaced volley library withRxJavaretrofit library to makeasychrousAPI calls to get user-profile and monthly stats data in custom view.
- Made code more modular and avoid memory leaks from bad object references which locked the object and did not allow Garbage Collector to clean it up.
- Used Espresso librarytpperform automatic synchronization of test actions with the UIandui-automatorlibrary for UI interactions that are not within app.
- Utilized Amazon S3(Simple Storage Service) service for media files storing and retrieving
- PerformedgRPCauthentication includinggRPC’sbuilt-in error codes with use of SSL/TLS to authenticate the server and encrypt all the data exchanged between the client and the server.
- IntegratedAWSMobileClientAPIs for automatic token and credentials management and state tracking with notifications for performing workflows.
- Held daily calls with the end client to integrate Adjust SDK for Session and event callbacks.
Confidential, Atlanta, GA
Android Developer
Responsibilities:
- Followed Agile methodology and Scrum processes and participated in bi-weekly Sprint planning,
- Performed technical work using Android Studio IDE.
- Applied a MVP architecture.
- Created new features programmatically using Kotlin.
- Eliminated null point exceptions using Kotlin.
- Architected application following material design and used the four components of Android: Activities, Fragments, Content Providers, and Broadcast Receivers.
- Developed Display Modes for Android application and integrated various back-end services natively and using various third-party APIs.
- Implemented Fragments to make the app usable on both Smart phone and tablets.
- Worked closely with the web application development team to ensure proper integration between mobile application and web application.
- Provided full support to browser testing team to fully automate manual scripts using Selenium Testing Framework.
- Implemented RESTful call to receive JSON based response and parsed with GSON to display data.
- Handled XML data using efficient parsing techniques such as DOM parser.
- Integrated activity and fragment-based navigation to adapt to portrait and landscape orientations to better use the screen state adapting to phones and tablets.
- Implemented Picasso to do Asynchronous image loading.
- Used GIT for source control management and continuous integration with Travis for CI.
Confidential, El Segundo, CA
Android Mobile Developer
Responsibilities:
- Added several animations and transitions without of the box features and third-party libraries.
- Improved the search navigation Activity to find out station names.
- Experience working on-site and off-site teams and management.
- Integrated Java Guava Libraries for string processing, concurrency libraries, I/O functions.
- Development of quality code using cutting-edge techniques, tools, and utilities.
- Improved the layout rendering by saving and optimizing the view hierarchy in all the resources.
- Used private Git repository with BitBucket for development project.
- Participated in code review sessions to always have high quality (reusable, simple, documented) code.
- Assisted the build creation with a Jenkins instance hosted on a private server.
- Created the database using SQLite local file and a Firebase implementation.
- Used native and third-party technologies to optimize the app functionality including Java, Parse, Volley, SQLite, Fragments, Picasso, Android Studio, JSON, SQLCipher, Spongy Castle, Git, Jenkins.
- Use of Implicit and Explicit Intents.
- Created custom views to present data as it was needed.
- Use of SharedPreferences.
- Generated the application with a Model View Presenter architectural design pattern to help with the modularity and maintainability.
- Successfully executed test cases and fixed bugs.
- Part of Agile team consisting of 3 Android developers, iOS developers, web services, UI/UX designers and front-end developer.
- Used the Parcelable interface to serialize the objects.
- Performed automated testing by using Robolectric.
- Eliminated the use of external libraries by consolidating the use of OKHTTP and GSON.
- Implemented List View using the View Holder pattern to improve the performance.
- Worked with a SCRUM (Agile) methodology.
- Used advanced networking, multithreading and image loading libraries for efficient communication like Volley and Picasso.
- Experience building high volume consuming facing applications at massive scale.
- Ensure effectiveness of SCRUM related meetings (planning, retrospective) and discussions.
- Worked closely with the Android and iOS development teams for the web service API definition.
- Worked on making sure RESTful web services adhered to Android Best Practices