Role/highlights Resume
Lead Android Developer Atlanta, GA
PROFESSIONAL SUMMARY
- 6 years Mobile App /Android Development Experience
- 5+ Mobile Apps Published
- Experienced in Material Design: Well - rounded noledge 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
- Has worked on cloud with Azure and Google
- Thorough noledge of XML, XAML, HTML5, CSS3, JavaScript
- Experienced in Java, JavaScript, C, C++, Python
- Proficient with Eclipse and Android Studio IDEs
- Design, develop, implement successful large-scale mobile projects from client requirements to completion
- 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 noledge of programming methodologies like Agile SCRUM and Waterfall
- Adept at using external libraries like Picasso, Retrofit, Sugar, GreenDAO and more
- Great communicator, I enjoy working in teams
- Self-motivated, I enjoy a good challenge and thrive under pressure
- I consider myself a good mentor and I enjoy mentoring junior members of the team
- I is a firm believer in testing: test early, thoroughly, and continuously. The sooner bugs are found the better.
- Has 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.
- Generating QR codes using the native Google Vision frameworks or a third-party library like ZXing.
- 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, Volley, Retrofit, AsyncTask
Web Servers: Apache, Tomcat, GlassFish
Hybrid Development: Cordova, PhoneGap, Xamarin
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
Web Technologies: JavaScript/HTML/CSS
Database: SQL Server, MySQL, SQLite, NoSQL, Firebase, Parse Version Control Software: Git, GitHub, SVN, SourceTree, Bit Bucket, Tower
Design Patterns: MVC, MVP, MVVM, Singleton, Builder, Factory, Façade,Command,Observer
Memory Management: ART, Dalvik, Memory Mapping, leak Canary
Frameworks: Three20, Sparrow, Java Development Kit (JDK), .NET, Android SDK, Fabric
Development Platforms: Android SDK, Firebase, Reactive-X Issue Tools &Tracking
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.
- 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
- Added the Parcelable interface to pass custom objects between components quickly via Intents.
- Used Espresso for instrumentation testing using Assertions, Matchers and Actions.
- Worked with LRU Cache to increase the performance of ListView scrolling.
- 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 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.
- 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 noing the skills and aptitudes of my team.
Technologies Used MVP pattern, SQLite, SQLCipher, Keychain, Glide, Google Maps API, Scrum, 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, 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 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
- Constructed a layout following Material Design Guidelines and using various views and layouts, coordinator layout, image views, text views, etc.
- 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.
- Used SharedPreferences to provide consistency with 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.
- Added Retrofit to consume RESTful web services to parse realtime-data and new items.
- Consumed web services to display user history on the user interface.
- Led a Android development and worked closely with cross-functional teams of web development 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.
- Dagger 2 and Butter Knife used for dependency injection and decoupling.
Technologies Used MVP pattern, SQLite, SQLCipher, Facebook and YouTube APIs, Glide, Google Maps API, Scrum, REST, Android Support Library, Google Cloud Messaging, Firebase, Google GSON, Okio, Crashlytics, Retrofit, Fabric, Butter Knife, greenrobot EventBus, CommonsWare Android Components (CWAC), LeakCanary
Senior Android Developer
Confidential, Burbank, CA
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.
- Used Lazy Loading to improve performance over heavy visual content.
- Used Intents & Intent Filters to initiate activities and pass information between activities and fragments.
- Created Compound views for a more attractive and efficient design.
- Implemented Google location services to support use by Spanish audience.
- Used MediaPlayer with VideoView to stream and render live streaming media and streaming media.
- Used Fragments for easier navigation & re-usability of UI components.
- Implemented Android Support Library for backward compatibility.
- Interfaced with SQLite for storing information, and SharedPreferences to store custom key-value pairs.
- Used Espresso & Mockito for testing the UI & App functionalities.
- Implemented web view to be able to login using different service provider credentials.
- 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.
- 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.
- 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.
- Consumed RESTful web services using Volley and parsed JSON objects with GSON.
- 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.
- Participated in technical feasibility of UI/UX per Google Material Design Guidelines.
- Built Activities using compound and customized views.
- Implemented Google Analytics and Flurry for app analytics purposes.
- Ensure excellent form factor integration by creating multi-panel activities with Fragments.
- Worked with Picasso library for image rendering in high resolution.
Technologies Used Fragments, Inte nts, 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
Role/Highlights
- 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.
- Google maps and location services to find services where users are currently located.
- Developed a look and feel that mimicked the iOS version of the app following the Google 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
- Implemented several design patterns such as MVP, Singleton and Observer; Builder, Façade.
- 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 custom/compound views for displaying queried data.
- RESTful data consumption using Retrofit with 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.
- Followed TDD/BDD and Agile methodologies throughout the project.
- 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 you're 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, OkHTTP, 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
Role/Highlights
- Used Git repositories to has 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.
- 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.
- Use of the startActivityForResult 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 Picasso 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, Picasso, Okio, Crashlytics, Retrofit, Fabric, Butter Knife, Dagger, greenrobot EventBus.
Android Mobile Developer
Confidential, El Segundo, 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.
- 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 has 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 halp 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.
Technologies Used Picasso, SQLite, GPS, Custom Views, Compound Views, Animations, SharedPreferences, Volley, OKHTTP, Agile Scrum, API, RESTful Web Services, JSON, GSON, Parcelable, RobolectricEDUCATION