Senior Android Developer Resume
Mclean, VA
SUMMARY:
- A dedicated lifelong learner, with a passion for Android Mobile Development and a strong commitment to helping my project teams be the best and deliver the best.
- 5 years of experience as an Android Mobile Apps developer working on a variety of projects which has given me a well - rounded foundation and broad perspective.
- 5 years of experience in I.T. as a software developer with well-rounded experience in web apps, back-end database and front end development. This experience enables me to see this big picture in the app development, construct better apps and better meet business needs.
- Ability to architect, design, develop and test applications from scratch.
- Ability to ask the right questions, provide feedback to stakeholders, break down tasks, and create a plan to achieve the intended result.
- Ability to contribute to design, architecture and technical strategy.
- Ability to debug, diagnose performance bottlenecks and fix complex issues in Android.
- Ability to manage competing priorities in a complex environment and maintain high productivity.
- Ability to research, consult and guide decisions on architecture and technical strategy.
- Ability to set tasks and complete work independently without direction, or work as part of a team.
- Ability to work effectively as a member of either on-site or remote teams.
- Able to architect the creation of large-scale applications with the consumption of web services to display data.
- Able to build mobile applications that utilize web services (REST, HTTP-based, XML, SOAP, JSON or other services).
- Able to contribute to Android team constructively with mentoring, assisting and code reviews.
- Able to design to scope, develop and deliver a software experience that realizes the product strategy.
TECHNICAL SKILLS:
Methods IDEs: Material Design, Agile/Scrum,Android Studio, Visual Studio, Eclipse, IntelliJ
Bug Tracking Version Control: DDMS tool, ADB, LeakCanary, Firebase Crash reporting, Crashlytics,JIRA, Jenkins, Git, SVN, Git, GitHub, BitBucket
Architecture & Design Patterns Programming: MVC, MVP, MVVM, Singleton, Dependency Injection, Builder, Factory, Façade, Proxy, Command, Observer,Java, C++, C#, SQL, and Visual Basic, Object Oriented Programming (OOP)
Database: Firebase, MySQL, SQLite
JAVA & Android: UI/UX
Third-Party Webc & API: Java Swing, Ajax Swing, GWT, C standard Library, MPL and MECL libraries, Ksoap2 library, 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, JobSchedule, Push Notifications, Espresso, Google Play Services, AsyncTask, IntentService, Handler, Handler Threads, Loopers, Loaders Custom android views classes and components, Android adapter views like Listview, Gridview and Gallery, Customized List views, Gallery widgets Fabric, Glide, Google Custom Search, Samsung SDK, Logger, Spork, Dagger, Mosh, Answers, RxJava, RxCache GSON, Robolectri, EventBus, LeakCanary, VidEffects, Robotium JavaScript, XML, JSON, GSON, SOAP, AJAX, Google API, Twitter API, FaceBook API, LinkedIN API, Payment APIs, PayPal API, various third-party APIs.
PROFESSIONAL EXPERIENCE:
Confidential, San Francisco, CA
Confidential MOBILE
Responsibilities:- This was an older app and in need of a major update, redesign of UI/UX and performance enhancement with newer frameworks.
- Acted as project coordinator by meeting with stakeholders, external teams, products managers. Good at asking the right questions and providing feedback to stakeholders. I also helped break down tasks, and create workflow plans.
- Acted as Scrum Master managing task load and making sure team members took programming tasks they were suited to, or were properly paired for tasks; ensured all tasks and backlog were getting done, that we made deadline and making sure that all developers were familiar with the main modules.
- Actively participated in the decision making of the technologies to use.
- Actively participated on the RESTFul API definition following best practices.
- Actively worked with the back-end team to improve the RESTful API to include new features for the Android app.
- Added a DrawerLayout to handle external and constant menu items related to the app’s current Activity and extra features.
- Added Android environment configuration with sessions and user login using SharedPreferences.
- Added Android wear compatibility for actions and notifications.
- Added encrypted environment configuration with sessions and user login using the OS Keystore.
- Added BouncyCastle library to securely encrypt sensitive user information locally.
- Added Flurry for user behaviour tracking and quality control over crashes.
- Added horizontal-panel layouts with ViewPagerIndicator.
- Added value encryption in SharedPreferences using AES 128 with the Secure-preferences Library.
- Aided Product Owner and Stakeholders to define requirements.
- Analyzed and defined development hours for requirements split into user stories for UX/UI design and in line with the Material Design guidelines.
- Refactored code and updated code to use several newer frameworks.
Confidential, Detroit, MI
Responsibilities:- Involved in all phases of software development life cycle for this app including planning, architecture, development. I created the implementation plan and led the team in implementation.
- Oversaw quality testing, working with testing team.
- Worked closely with UI/UX designers and interacted with stakeholders, product managers and business units to gather requirements and ensure final product matched needs.
- Incorporated payment integration with SSL for protection of financial information. Added value encryption in SharedPreferences using AES 128 with the Secure-preferences Library.
- Analyzed and determine the time and effort needed to perform a user story.
- Added push notification features with Firebase Cloud Messaging for Android.
- Created the database using SQLite local file and a Firebase implementation.
- Delivered the setup of a Firebase mobile back end, setting up the code cloud and the connection with multiple external services.
- Used native Android and third party technologies to optimize the app functionality including, Material Design, Firebase Cloud Messaging, Espresso, JUnit, SQLite,, Glide, Shared Preferences,, Java, MixPanel, EventBus, Travis., RxJava
- Built the application to support multiple screen sizes over various Android devices through qualifiers and fragments.
- Configured private GitHub as a code repository for the Android development team.
- Configured the continuous integration process with a Jenkins instance hosted on a private server.
- Connected the app to Twitter, Instagram, and Facebook, by integrating their SDKs.
- Contributed to the technical documentation to increase the maintainability.
- Implemented Google Maps for location search with the Google Location APIs.
- Developed multiple modules ready to be released with Android 7.0 features (multi-window and enhanced notifications).
- Effectively used Activities, Services, Broadcast Receivers, SQLite and preferences Android components.
- Ensure effectiveness of SCRUM related meetings (planning, retrospective) and discussions, assisted with project planning and ensured deadlines were met.
SENIOR ANDROID DEVELOPER
Confidential,McLean, VA
Responsibilities:- Participated in planning design and architecture. Utilized material design standards, and pulled from architectural patterns (MVC, MVP, dependency injection, etc).
- Added BroadcastReceivers that corroborate the validity of a user’s login session with the backend.
- Implemented the Repository design pattern to properly allow the remote consumption and local caching to drive the off line features.
- Added push notifications natively with Android.
- Assisted in approval for Google Play app store, and ensured all guidelines were met.
- The Android mobile application was written natively with the Android SDK, and it supports devices starting from KitKat.
- Used JIRA for new requirements, issues, bug tracking, and project planning for this Android project.
- Supported multiple screen devices using Fragments and width-aware layouts.
- Use of the Gson library to deserialize JSON information.
- Used AsyncTask to handle the communication to the web services.
- Used RecyclerView and adapters to efficiently load data onto lists at runtime.
- Used support libraries to ensure backward compatibility with older Android versions.
- Refactor the existing modules and components from Dagger 1 to Dagger 2.
- Acted as project coordinator by meeting with stakeholders, external teams, products managers. Good at asking the right questions and providing feedback to stakeholders. I also helped break down tasks, and create workflow plans.
- Acted as Scrum Master managing and assigning tasks, managing backlog, ensuring code reviews were done, and that everyone had a mentor. Ensured project stayed on target, keeping stakeholders in the loop.
ANDROID DEVELOPER
Confidential,Framingham, MA
Responsibilities:- Helped transition the Android app from MVC to MVP, to achieve a complete separation of concerns, better code reuse, simpler code reuse and a higher percentage of unit tests.
- Introduced Dagger library for achieving the decoupling of the modules through dependency injection.
- Participated in Agile Scrum project attending daily scrums, and participating in Sprint planning meetings, sprint reviews, sprint retrospectives and Backlog refinement meetings.
- Interacted with Product manager and stakeholders to gather requirements and keep them in the loop on project status.
- Wrote unit tests for the functionality of the application and tests using JUnit.
- Worked with Android Device Monitor for monitoring CPU load, heap size and memory usage
- Wrote automated tests (TDD & BDD) with RSpec, JaCoCo and Cucumber.
- Wrote Javadoc for documenting the different modules, and software features.
- Extensive use of heavy data workloads to show items in a ListView with the ViewHolder pattern.
- Employed continuous integration tools like Jenkins in Android development.
- Embedded local storage solutions such as SQLite in Android.
- Image manipulation and animation, including techniques like alpha blending.
- Identified bugs on the previous version improving the performance on the Android lifecycle.
- Incorporated Firebase push notifications.
- Used native Android and third party technologies to optimize the app functionality including, Material Design, Firebase Cloud Messaging, Espresso, JUnit, SQLite, Glide, Shared Preferences,, Java, MixPanel, EventBus, RxJava
- Consumed RESTful web services with Retrofit and replaced old third party libraries.
- Used persistent data on the device to store information already loaded for future use by implementing local LRU and database caching.
- Used Butter Knife library for Android views dependency injection.
- Wrote automated tests (TDD & BDD) with JUnit and Mockito.
ANDROID DEVELOPER
Confidential,Pittsburg, PA
Responsibilities:- Generated a Material Design ready code-base including views in the design support library: CardViews, RecyclerViews, Snackbars, CoordinatorLayouts, Floating Action Buttons, Custom toolbars, DrawerLayouts.
- Followed an agile/iterative development process on the Android team (XP, SCRUM, etc.).
- Generated reachable daily goals and created a delegation task system that allowed developers focus on the development bearing.
- Generated reachable daily project goals and created a delegation task system.
- Generated technical documentation such as App Architecture and RESTful API definitions.
- Generated a custom behavior in multiple screens by using custom controls.
- Generated a downstream logic to communicate the servers with the phones using Google Cloud Messaging (GCM).
- Generated the application with a Model View Presenter architectural design pattern to help with the modularity and maintainability.
- Guided team in implementation of Android design patterns (MVP, Builder, Singleton, Factory).
- Handled Fragment data retention to ensure data integrity in Android on-screen rotation with the onSaveInstanceState and onRestoreInstanceState methods.
- Use of the MediaPlayer and background Services to in corporate playback functionality.
- Efficiently used Activity, Intents, Fragments, Services, Broadcast Receivers, notifications, Content Providers and Media Players for building the app.
- Exchanged information between the application and the primary database using RESTful web services and AsyncTask or Services.
- Experience prototyping mobile experiences.
- Implemented the RESTful data consumption using Retrofit with an OkHTTP client, a GSON converter, and a custom interceptor.