Lead Android Developer Resume
Atlanta, GA
PROFESSIONAL SUMMARY
- 10 Years Information Technology
- 6 Years Android Mobile App Development
- 6 Android Mobile Apps Published
- Experienced in Material Design: Well - rounded knowledge of the Material Design specifications and experience programming with Material Design Views Widgets and design patterns
- Comprehensive experience in front and back end as well as database and web services
- Good understanding of RESTful client and server
- Experienced in Java, jQuery, C, Groovy, HTML/CSS, SQL, Hibernate, Spring, J2EE, JBoss, WebLogic
- Proficient with Eclipse and Android Studio IDEs
- Planning, designing, developing and implementing successful large-scale mobile projects from end to end.
- Enjoy planning, designing, and implementing successful mobile projects from requirements to publication.
- Accustomed to working with versioning tools like Git, GitHub, SVN, SourceTree, BitBucket, and Tower.
- Good knowledge of programming methodologies like Agile SCRUM and Waterfall.
- Adept at using external libraries like Picasso, Retrofit, Sugar, GreenDAO and more.
- I consider myself a good mentor and I enjoy mentoring junior members of the team.
- I am a firm believer in testing: test early, thoroughly, and continuously. The sooner bugs are found the better.
- Have worked with push notifications and with as well as internal notifications for Android and wear products.
- Well versed in asynchronous programming; successful use of Java’s Thread class as well as Android’s AsyncTask class.
- Experience with network programming and consuming third party APIs, guiding the integration into dozens of APIs successfully with highly performant/critical integrations.
- Experience working on-site and off-site teams and management of remote teams.
- Fluent in Android SDK/NDK and device driver development
- Experience developing highly efficient Java code and view layouts and the ability to diagnose performance bottleneck.
- Performed Espresso, JUnit, Mockito and simulated design patterns to test and develop applications.
- Hands-on experience developing stable, reliable and backward compatible mobile applications.
- Capacity to identify problems and provide alternative solutions.
- Dynamic, competitive, and proactive self-learner who learns and adapts easily to new technologies such as Smart Watches, Chromecast, and Smart TV devices.
- Implements best practices and security whenever possible.
- Experienced in software development life cycle working with Android.
- Skilled use of Threading, Fragments, Implicit and Explicit Intents in Android development.
- Experience with apps with networked data from content management systems.
- Application of the Pillars of Object Orientated Programming and Android development best practices.
- Experienced working with tablets, phones, smart TVs and more recently Android Smart Watches.
- Advocate for coding best practices based on Object Oriented Principles.
- Capable of creating environments for reading and generating QR codes using the native Google Vision frameworks or a third-party library like ZXing.
- Conducted business and technical Knowledge Transfer sessions for new recruits.
- Extensive experience in user interface (UI/UX) using wire framing tools such as Balsamiq Mockups
- Full-stack developer cable of designing, developing and publishing scalable and high-performance Android applications working on both front-end and back-end development.
- Fast and accurate coding using several IDE's including Android Studio, J Developer, Eclipse among others, IntelliJ, etc.
TECHNICAL SKILLS
Programming Languages: Android SDK, Java, HTML5, CSS3, JavaScript, PHP, XML, C, C++, Python
Web Services: RESTful, JSON, OkHTTP, Volley, Retrofit, AsyncTask
Web Servers: Apache, Tomcat, GlassFish
Methodologies: Agile, Waterfall, Test-Driven Development, Continuous Integration, pair Programming, Xtreme Programming, Scrum Project Management Tools KanBan, JIRA, Slack, Confluence, Basecamp
Libraries: Retrofit, Picasso, GSON, Twitter Fabric, Google Maps API, Google Location Services, Google Sign in, Sugar, OkHttp, Butter Knife, Google Analytics, Google AdMob, Parse, Facebook API, LeakCanary, Universal Image Downloader, Volley, SQLCipher, Glide, Espresso, SQLite, ORMLite, iText, Firebug, Bolts, Crashlytics, Otto. C standard Library
PROFESSIONAL EXPERIENCE
Lead Android Developer
Confidential, Atlanta, GA
Responsibilities:
- Documented all changes made to the app, improvements, fixes and new features, back-end and front-end development.
- Participated in the full mobile software development life cycle.
- Added the Parcelable interface to pass custom objects between components quickly via Intents.
- Used Espresso for instrumentation testing using Assertions, Matchers and Actions.
- Updated the look and feel following Material Design guidelines, and implemented several Fragments for the UI.
- Ensured excellent form factor integration by creating multi-panel activities with Fragments.
- Improved the layout rendering by saving and optimizing the view hierarchy in all the resources.
- Supervised the creation of the unit, integration and stress test cases with JUnit, Espresso, and MonkeyRunner.
- Actively worked with the back-end team to improve the RESTful API to include new features.
- Developed compound views to present information to the user depending on its preferences.
- Managed private Git code repositories with SourceTree.
- Implemented a WebView control to reuse some legacy web application functionality within the native app.
- Implemented Google Analytics, Flurry and Firebase for various analytics.
- Utilized the Android Studio IDE to develop and code the application in Java.
- Contributed value to a cross-functional engineering teams (back-end development, front-end development, UI/UX designers, QA, Product Management, etc.).
- Led a team of three Android developers, one hybrid developer, and one back-end developer and one front-end developer.
- Conducted frequent code review activities with the members of the development team.
- Facilitated requirement gathering sessions and wrote the high level and detail design for the Android application.
- Managed the authorization with the backend services using certificate pinning.
- Created an encryption algorithm to save sensitive data in the local database.
- Configured Git repositories on private Git server for the Android development team.
- Configured the continuous integration process with a Jenkins instance hosted on a private server.
- Constructed prototypes of the User Interface integrating the latest Material Design guidelines.
- Documented the progress of the daily stand-ups and Scrum meetings with JIRA, Confluence and Slack.
- Established communication with back-end server to consume Restful API using core Android classes.
- Implemented the use of handlers and threads on several tasks which improved the application performance.
- Managed team and optimized workflow with balanced task assignments and knowing the skills and aptitudes of my team.
Technologies UsedMVP pattern, SQLite, SQLCipher, Keychain, Glide, Google Maps API, ZXing, Scrum, OkHttp, v7 Support Libraries, WebView, Agile/Scrum, SourceTree, Git, Java, Android Studio, UI/UX, database, Certificate pinning, Material Design, Expresso, Monkey Runner, Junit, Firebase, Flurry, Git, JIRA, Confluence, Slack, ListView, Fragments, Jenkins, Continuous Integration, Encryption, Algorithm, Security, RESTful API
Lead Android Developer
Confidential, Richmond, VA
Responsibilities:
- Data caching done with an SQLite local database encrypted for enhanced security using SQLCipher
- RESTful client implemented using Retrofit, OkHttp and GSON for serialization.
- Maps done through Google Maps using v2 API and Google Localization Services.
- Images loaded asynchronously resized and cached using the Google Glide Library
- UI/UX for maximum brand recognition, simplicity of use and intuitiveness
- The project was managed with an Agile SCRUM methodology. I assisted and at times took over the position of SCRUM Master
- Implemented the menu using the support v7 Navigation Drawer with multiple options
- Used ZXing as an external library to generate and read QR codes
- Constructed a layout with multiple WebViews in order to have streaming and YouTube caching services in the same screen
- Implemented API requests to interact with Facebook, Twitter (Fabric) and YouTube APIs.
- Participated in architecture, design, implementation and launch.
- Proposed a front-end architecture using the MVP Model design pattern.
- Implemented Android Support Library for backwards compatibility.
- Used Google Cloud Messaging for push notification and user set alerts of inventory changes.
- Used Jenkins continuous integration and Espresso for automated testing.
- Acted as direct interface with client and participate in overall development activities including requirements elaboration, design, and coding.
- Performed peer reviews on colleague’s code to ensure consistent standards.
- Worked with PayPal Android SDK to easily make payments.
- Used SharedPreferences to provide consistency with local key-value pairs.
- Provided the app with functionality that enables location awareness with Google play Services
- Used Localytics to find issues, get stats and improve performance.
- Mentored junior developer on best practices for coding.
- Participated on the data modeling upgrade on the device side and the server side.
- Added Retrofit to consume RESTful web services to parse real-time data and new items.
- Developed multiple modules ready to be released with Android 7.0 features (multi-window and enhanced notifications).
- Consumed web services to display user history on the user interface.
- Have managed a large team of engineers and remote contractors encompassing a variety of Android specialties.
- Established the coding standards to be used in the Android development.
- Crashlytics used for testing and various Fabric tool employed.
- Used Google ZXing for scanning car stickers.
- Butter Knife used for dependency injection and decoupling.
Technologies Used MVP pattern, SQLite, SQLCipher, Facebook and YouTube APIs, Glide, Google Maps API, ZXing, Scrum, REST, WebViews, Android Support Library, Google Cloud Messaging, Firebase, Google GSON, Picasso, Okio, Crashlytics, Retrofit, Fabric, Google Zxing, Butter Knife, greenrobot EventBus, CommonsWare Android Components (CWAC), LeakCanary
Senior Android Developer
Confidential, Boca Raton, FL
Responsibilities:
- The application was written natively with the android SDK, and it support devices starting from KitKat.
- Used Android Studio as the IDE since it includes all the tools needed to develop, test and deploy the application.
- Implemented the Google YouTube API for playing videos.
- Created Lazy Lists for loading the images from the web & store them into the cache of the application.
- Implemented the SquareUP API for processing online payments.
- Used Intents & Intent Filters to initiate activities and pass information between activities and fragments.
- Created Compound views for a more attractive and efficient design
- Consumed Restful Web service in JSON strings.
- Designed a GSON representation for easy web data reading, and widgets to help customers manage the launcher.
- Used Fragments for easier navigation & re-usability of UI components.
- Interfaced with SQLite for storing information, and SharedPreferences to store custom key-value pairs.
- Used Espresso & Mockito for testing the UI & App functionalities.
- Used GIT control the source code by creating different tags, branches & commits according to the different releases made.
- Mentored junior developers about coding standards and best practices.
- Created presentations and technical documentation.
- Integrated Facebook API for login with Facebook and for app promotion and sharing.
- Generated new technical documentation based on all changes made to the app.
- Participated in the full mobile development life cycle.
- Improved the layout rendering by saving and optimizing the view hierarchy in all the resources.
- Added the Parcelable interface to pass custom objects between components quickly via Intents.
- Worked with LRU Cache to increase the performance of ListView scrolling.
- Designed tweaks to the look and feel using Model design.
- Supervised the creation of the unit, integration and stress test cases with JUnit, Espresso for UI behavior testing.
- Was the owner of the central Git repository for our team, and used private GitHub repositories to host internal code.
- Actively worked with the back-end team to improve the RESTful API to include new features.
- Developed compound views to present information to the user depends on its preferences
- Used the View Pager Indicator to provide feedback to the user about the background processing status.
- Setup proper interactions of the front-end design and implementation with backend servers.
- Built Activities using compound and customized views
- Implemented Google Analytics and Flurry for app analytics purposes.
- Implemented ListViews for loading most of the catalogs.
- Ensure excellent form factor integration by creating multi-panel activities with Fragments.
- Worked with Glide for image rendering in ListViews.
Technologies Used Fragments, Intents, Broadcast Receiver, Espresso, RESTful, JSON, GSON, Lazy Lists, YouTube API, Widgets, compound receivers, Git, SQLite, Android Studio, Facebook API, Google Analytics, Junit, Espresso, Monkey Runner, DBMS, Postgres SQL, View Pager, Eclipse, DBMS, REST, MVP, Parcelable, Intents, Facebook API, LRU cache, SDLCAndroid Developer | WeWork
Remote Project
Confidential New York, NY)
Responsibilities:
- Enhanced the app for heavy data load processing using services and AsyncTask combined with AsyncTaskExecutor.
- Used the Picasso library for intensive image rendering on ListView
- Created extensive caching of both images (lazy-load) and data (object data from network as SQLite tables).
- Designed and implement peer-to-peer messaging via the Pusher libraries.
- Employed GPS and location-based services to find services where users are currently located.
- Developed a look and feel that mimicked the Android version of the app following the material design guidelines.
- Implemented Custom and Compound View to match the UI/UX specifications.
- Integrated activity and fragment-based navigation to adapt to portrait and landscape orientations to better use the screen state adapting to phones and tablets
- Added animated transitions when calling other activities to improve the user experience.
- Used JSON in RESTful services to extend the application response capabilities
- Conducted SCRUM meetings and acted as liaison with the upper management to make everything work faster by removing all blocking situations the team was facing
- Implemented several design patterns such as MVP, Singleton and Observer
- Created and maintained technical documentation for this application
- Sped up the build process with Jenkins continuous integration tool.
- Integrated Crashlytics to analyze the behavior of the users.
- Created several compound views to match the UI provided by the UI team.
- Layout user interface maintained efficiently through Fragments.
- Implemented Google Maps API and Location services.
- Implemented custom/compound views for displaying queried data.
- RESTful data consumption using Retrofit with a client, a GSON converter, and a custom interceptor.
- Used Google GSON to parse JSON files.
- Tracked incident reports with JIRA
- Collaborated with the product team to identify, prioritize, and document detailed product requirements.
- Experience with TDD/BDD and Agile methodologies.
- Used JIRA for project planning and bug tracking.
- Constantly perform and manage code reviews.
- Led a team of Android Java programmers.
- Made use of communication between standard data between apps over network requests using Retrofit.
- Able to develop efficient and maintainable code with the right balance between solving the problem at hand and not over-engineering your solution.
- Worked with the UI/UX team for the new app skin redesign.
- Implemented Google Analytics for app analytics proposes.
- Connected the app to Twitter, Instagram, and Facebook.
- Tested the mobile app in various emulators to support multiple Android devices.
Technologies Used Picasso, SQLite, GPS, Custom Views, Compound Views, Animations, Agile/Scrum, Continuous Integration, TDD, BDD, JSON, GSON, JIRA, Jenkins, Git, UI/UX, Java, Android, Google Maps API, MVP, Observer, Singleton, Crashlytics, Facebook, Twitter, Instagram, Google Analytics, Retrofit, AsyncTask, LazyLoad, Compound View.
Android Mobile Developer
Confidential, San Francisco, CA
Responsibilities:
- Used Git repositories to have the software in a version control environment.
- Employed TDD/BDD and Agile methodologies.
- Implemented the user interface by using Compound View, Custom View, ListView, View Pager and Tab Layout.
- Worked with Urban Airship for push notifications.
- Tuned components for high performance and scalability using techniques such as caching, code optimization, and efficient memory management.
- Use of Implicit Intents, ListViews, ActionBar tabs with Fragments.
- Applied fragments to minimize the activity count and simplify the navigation.
- Tested the application on various devices and emulators to determine compatibility.
- Design and develop functionality between user’s interaction and delegating it back to the server using RESTful web services and JSON parsing consuming them with HttpURLConnection.
- Ability to deal with ambiguity, and willingness to help debug difficult issues.
- Developed enhancements and improvements to the current Application.
- Used the Android tool ecosystem for development, testing, debugging, and performance benchmarking.
- Configured a Flurry account to retrieve analytics information from every device installation.
- Designed and developed the Android app as simple as possible for quick user adoption.
- Accessed internal file storage to save different configurations of the application.
- The passing of data was made using bundles and serialized information among different activities.
- Used the Dalvik Debug Monitor Server (DDMS) for debugging and testing.
- Worked with the testing team and used developer testing tools like Robolectric.
- Collaborated with the product team to identify, prioritize, and document detailed product requirements.
- Used SQLiteOpenHelper to create the SQLite database schema to persistent data from users
- Connected the app to Twitter, Instagram, and Facebook.
- Tested the mobile app in various emulators to support multiple Android devices.
- sprint.
- Use of the startActivityFoResult flow for different features within the application.
- Employed a Test-Driven Development methodology to ensure every method was properly done and tested.
- Mentored three new developers about beta testing and requirement gathering.
- Created asynchronous operations using multiple strategies: AsyncTask, Handlers, Intent Services, and Loaders for Android.
- Devised creative technical solutions to performance bottlenecks.
- Added encrypted environment configuration with sessions and user login using SharedPreferences.
- Implemented Universal Image Loader to do Asynchronous image loading.
- Usage of core Android resources like Fragments, Styles, Themes, 9-Patch Images.
Technologies Used Picasso, SQLite, GPS, Custom Views, Compound Views, Animations, Facebook API, Android Support Library, Google Cloud Messaging, Firebase, Google GSON, Okio, Crashlytics, Retrofit, Fabric, Butter Knife, Dagger, greenrobot EventBus.
Android Mobile Developer
Confidential, CA
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.
- Worked with both 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.
- Was the owner of the central Git repository for our team.
- Managed code review sessions to always have high quality (reusable, simple, documented) code.
- Managed 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, Universal Image Loader, 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 Shared preferences.
- Created small testing instances with Android Wear and Android Auto.
- Have a portfolio of shipped production level apps used by a large number of users.
- 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.
- Worked in small and large agile teams to design, prototype, and build our product offering and tools.
- 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 HttpURLConnection 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 Universal Image Loader.
- 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.
- Mentored two junior web developers on coding best practices for RESTful web services.
Technologies Used Universal Image Loader, SQLite, GPS, Custom Views, Compound Views, Animations