Senior Android Architect & Developer Resume
FloridA
SUMMARY:
- 9+ years of progressive experience in any job title with duties involving software development, programming or analysis
- 7+ years of experience building applications with the Android SDK with extensive knowledge of the Android platform with more than 10 published apps in the Google Play Store
- Self - motivated, productive, and works well even with/without formal structure.
- Conducted regular 1-on-1s with team members to provide career and technical mentorship.
- Solid background in OOP and knowledge of software design patterns/best practices.
- Regularly provide constructive feedback to team members so they can continuously grow individually.
- Worked with an internal QA team on system, performance, and acceptance testing.
- Understanding of Activities, Fragments, Custom Views, Services, Volley, Support library, and 3rd party libraries.
- Thrive working in a fast paced, agile environment constantly learning.
- Familiarity with agile/iterative development methodologies (XP, SCRUM, etc.).
- Partner with cross-functional teams to define new product requirements, features, and functionality.
- Ensure software created and released conforms to quality requirements by accurately writing and executing test plans.
- Extensive experience with Java and full command of Android APIs on all OS versions.
- Interact very closely with both the Product and the Design teams.
- Architect, design, develop and test applications from scratch.
- Experience with web related technologies, including JavaScript, HTML 4/5, AJAX, JSON, XML.
- Experience in architecting and developing networking and secure applications for Android.
- Monitored, triaged and assessed the Android app's performance, bugs, and defects.
- Effectively communicate coding solutions and articulate the reasons for your decisions.
- Experience in working with Video, static content, and advertising.
- Great understanding of when to let the team work through a problem and when to help them.
- Time automation, Numeric ability, Work under pressure.
- Architected the creation and the consumption of Web Services targeted to be used by millions.
- Believer of the 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.
- Extensive experience in communicating with teams in different time zones to ensure smooth workflow.
- Used the following design patterns command, observer, MVC, MVP, factory, facade, ViewHolder.
- Was in charge of the generation of the production-ready APK, from signing the build to publishing the app in the Google Play Store.
- Strong knowledge in Agile development environments, having a SCRUM Master role in multiple meetings.
- Used Fragments, diverse layouts, animations, Material Design components, Compound Views and Custom Views to fulfill user interface requirements.
- Optimized the app performance regarding memory, network, battery, and CPU usage.
- Created the initial setup of multiple continuous integration servers to help the build creation process (Travis, Jenkins, Circle-CI).
- Ability to coach and train other developers and users.
- Observed the configuration process of the Version Control Software with different tools.
- Set up the continuous integration servers using Jenkins and Codeship.
- Used and implemented the latest Material Design guidelines, including animations and User Experience optimization.
- Strong knowledge in Android multithreading frameworks: AsyncTasks, IntentServices, Handlers, Threads, Runnables, Loopers.
- Coordinated efforts with different background professionals such as system analyst, graphic designers, developers and technical documenters.
- Worked in multicultural environments with local and remote teams in Agile environments.
- Self-motivated, goal-oriented and able to work without supervision.
- Highly skilled in maximizing algorithm efficiencies, software development and device resources management including memory, network, and battery to achieve consistent productivity and consistent behavior between applications.
- Architected applications that follow Google best practices included: design, battery consumption, network usage, memory management
TECHNICAL SKILLS:
NFC, XmlPullParser, FloatingActionButton, Espresso, Robotium, Loaders, Runtime permissions, RxJava, Cordova, Urban Airship, Ion, MVC, Volley, Glide, GSON, Sugar, Firebase, Location Services, Google Analytics, MPAndroidChart, Picasso, MVP, Push Notifications, Flurry, Material Design, Multi-Window, Certificate Pinning, PushBots, Fresco, Android Studio, Jenkins, REST, Eclipse, Google Cloud Messaging, Fabric, VidEffects, JUnit, LeakCanary, Bluetooth Low Energy, ConstraintLayout, Mercurial, JobScheduler, Robolectric, animations, EventBus, Git, Dagger, Retrofit, Broadcast Receivers, GcmNetworkManager, Facebook SDK, Stetho, Agera, ProgressBar, Crashlytics, Dependency Injection, Content Providers
OTHER TECHNOLOGIES: CSS, Crystal Reports, JSON, JavaScript, Bootstrap, PhysX, VB.Net, C#.Net, JQuery, ASP.Net, Oracle, OpenGL, DirectX, MySQL, MongoDB, Linux
PROFESSIONAL EXPERIENCE:
Confidential, Florida
SENIOR ANDROID Architect & DEVELOPER
Responsibilities:
- Met with stakeholders and various business units to fully understand the use case for the Android app, the objectives, the product function and application, and the variables involved.
- Ensured that I had a full understanding of all aspects of the Android project to ensure HIPPA compliance.
- Organized the Android team using Agile methodology. Responsible for Sprint Planning Meetings, creating epics and user stories, and working with the Product Owner to prioritize tasks.
- Worked closely with cross-functional teams and back-end engineering to integrate proprietary and custom APIs.
- Worked closely with Product Owner, graphic designers and UI/UX designers to ensure a high-quality interface with strong UX capability.
- Worked with biomedical engineers to learn about biometric and biosensing equipment, protocols, APIs and software. That allowed me to research and test possible choices of Android technologies, frameworks, libraries, and classes and architect the app and programmatic coding to make this work.
- Worked closely with my fellow architect to brain storm solutions and plan and create prototype sand mockups.
- Managed the QA testing team and supervised the writing of Junit test cases, and implemented functional testing using Test Fairy. Reviewed all tests created with Mockito, and Android Studio.
- Developed the app in Java code and Kotlin using Android Studio.
- For quality, we implemented a Jenkins instance on a private server and tested the app on devices using Jenkins.
- Used Git for version control and oversaw team members managing commits, branches and Gradle builds.
Technologies Used: Facial Biometric Integration, OCR Implementation, Liveness Detection Implementation, External API Integration, HttpClient Class, Memory Management, Image Processing With Open CV, Google Mobile Vision, Rank One, Biometric, Acuant, Neurotech, LeakCanary, Android UI/UX Android Studio, Retrofit, Mockito, PowerMock, Code Review, Sprint Planning, Sprint Retrospective, Agile Implementation, Unit Tests, Jira, BitBucket, Gradle, Version Control, Git, Sign And Build APK, GSON, JSON, Glide, Network Calls, RecyclerView, Crashlytics, Fabric, Memory Management With Android Device Monitor In Android Studio.
Confidential, New YorkLEAD ANDROID DEVELOPER
Responsibilities:
- Responsible for app prototype to test Chromecast integration.
- Worked with QA testers to manage testing and gather feedback.
- Responsible for maintaining, updating and fixing the in-house Chromecast library.
- Responsible for branding customization of the Chromecast library components to be used in these company apps (Nickelodeon, MTV, BET, VB1, Paramount, Spike).
- Responsible for reviewing code, debugging and resolving issues with Chromecast integration in these proprietary apps. ( Nickelodeon, MTV, BET, VB1, Paramount, Spike to use Chromecast in their application
- Responsible for daily Scrum meeting updates.
- Managed Sprint planning, calculating time per task and assigned tasks to team members.
- Responsible for creating tests for QA team to test new functionality added to the test application, and to the Chromecast library,
- Improved productivity resulting in faster production while maintaining high quality with prototype testing, automated testing, unit testing, beta tests and continuous integration.
- Programmatically automated encryption of password and username associated with application library in Java using Android Studio.
- Automated GIT hook to filter commit depending on GIT message format.
- Automated GIT hook to rebase and merge automatically on merge button click in stash
Technologies Used: Android studio, mobile phone, Chrome Cast, FireTV, Chrome Cast sender, git hooks, bash script
Confidential, New JerseyANDROID ARCHITECT
Responsibilities:
- Constantly perform and manage code reviews.
- Implemented data persistence using SQLite.
- Experience with TDD/BDD and agile methodologies.
- Applied Picasso to download images and show them in the UI.
- Eliminated the use of external libraries by consolidating the use of OKHTTP and GSON.
- Client and server data exchange with JSON which was converted to model.
- Created multiple versions of the app with the use of flavors set up in the build Gradle file.
- Attended the SCRUM meeting to keep track of the current sprint.
- Modified the navigation and replaced activities with Fragments.
- Was the owner of the central Git repository for our team.
- Implemented RESTful call to receive JSON based response and parsed to display data to the user.
- Mentored Junior Android Developers during the development cycle and process.
- Participated in the full lifecycle development process from product definition.
- Use of Implicit and Explicit Intents.
- Constructed early prototypes of the User Interface integrating the latest Material Design guidelines.
- Worked with the UI/UX team to design a user-friendly interface for the Android application.
- Used JIRA as the issue tracking tool.
- Helped the Android team to build the primary web mobile navigation structure of the app over the WebView control with JavaScript enabled.
- Enhanced the module that communicates with the Java Web Services with Retrofit.
- Build new features to enhance the UX for consumers.
- Involved in testing and testing design for the application after each sprint.
- Built custom controls for the navigation bar using compound and custom views.
- Experience with network programming and consuming third party APIs.
- Sound knowledge of relational databases (Oracle, MS SQL Server, MySQL, etc.).
AnDROID ARCHITECT
Responsibilities:
- Experience with continuous integration tools like Jenkins or Travis CI and automated testing frameworks such as Espresso.
- Served as a technical lead within the company to develop the technology stack.
- Wrote Javadoc for documenting the different modules, hardware & software features.
- Performed regular code reviews to ensure overall code quality and adherence to company coding standards and industry best practices.
- Implemented navigation bar menu for quick access to different activities in the application.
- Created custom views to present data as it was needed.
- Aid Product Owner and Stakeholder to define requirements.
- Integrated Flurry for mobile analytics.
- Prepared training material and guided other internal Java developers transitioning towards Android.
- Architected the Back-end solution and joined in the technology selection process.
- Monitored and participated in workflow tracking with HP Quality Center.
- Joined a team of ten Android Java developers.
- Helped the company to make the transition from traditional to Test Driven Development.
- Usage of Samsung SDK to provide custom behavior like the extra sensors, or the edge new size layout and Samsung accounts.
- Adapted Agile methodology to meet requirements on time.
- Utilized Eclipse IDE to implement the application.
- Collaborating with web designers to develop a user-friendly application.
- Collaborated with the new model, gave a new look-and-feel in the app, applying styles and themes following the new Google Material Design guidelines.
- Sped up the build process with continuous integration tools: CircleCi and Travis.
- Familiarity with the Android tool ecosystem for development, testing, debugging, and performance benchmarking.
- Created multiple Content Providers with a native approach to handling UI asynchronous updates.
Senior Android Developer
Responsibilities:
- Actively involved in the team meetings, ensuring the application had good performance.
- Made use of RESTfull calls to get de data to be shown on the application.
- Used JSON to exchange data from Restful Web Services.
- Implemented and facilitated an agile methodology aimed to ensure that re-usable patterns, components, and methods are implemented and adopted.
- Enhanced the requests for large web content display.
- Publish release packages and records.
- Collaborated with Bluetooth LE with a proprietary Tile iBeacon under the Eddystone protocol.
- Willingness to spend time testing minute details, especially with user interaction points.
- Used the SQLiteOpenHelper to connect with the local database and perform CRUD operations.
- Always adding value in a multi-cultured environment.
- Attended the SCRUM meetings to track app development progress.
- Weekly team meetings to present the status of the project and demo the updates, get feedback and update requirements.
- Tracked and issued the project planning and development lifecycle with JIRA.
- Genuine interest and drive to better your craft and the craft of those I've lead.
- Developed several Compound Views and Custom Views.
- Organized the team and scheduled weekly meetings to report application progress.
- Used Retrofit to handle the API consumption with a Jackson built-in converter.
- Re-skinned the application using the material design guidelines including ListViews for RecyclerViews replacements.
- Providing assistance to code merges, builds, deployments, and ensuring production stability.
- Added selectors and animation effects on UI/UX elements to enhance the User Experience.
- Designed SQLite database schema for implementing persistent data storage.
- Implemented Dagger for dependency injection.
- Created the initial setup of multiple continuous integration tools like a personalized Travis server and a Jenkins instance that handles the building on every GitHub commit.
- Participated in the full lifecycle development process from product definition through design, development, test, release and maintenance.
Senior Android Engineer
Responsibilities:
- Experience prototyping mobile experiences.
- Used JIRA for new requirements, issues, bug tracking, and project planning.
- Designed and implemented user-facing features in our mobile applications.
- Detected new features that could be implemented and did so.
- Real world OO design experience and knowledge of design patterns, combined with an ability to convey design information succinctly using suitable tools.
- Supervised the task reporting of all the team members.
- Experience with Android SDK versions 5 and above.
- Supervised the implementation of the object-oriented paradigm based on mobile devices.
- Traveled to client sites for onsite discovery and solutions presentations.
- Interfaced with multiple web services SOAP and RESTFul from data providers.
- Staying up to date on the ever-changing mobile and Android technology landscape.
- Secured the database using SQLCipher and Secure Preferences.
- Worked with the UI/UX specialist to design a user experience for the application.
- Created Services, AsyncTasks to perform update information check to avoid freezing the user interface.
- Designed the architecture for the app following proven design patterns such as MVC and SOA.
- Incorporated Google Maps for showing customized markers with geo-location features.
- Design and develop functionality between user’s interaction and delegating it back to the server using RESTful web services and JSON parsing.
- Used control versioning for source code management.
- Used XZing to read the information from various QR codes to access the vehicle information.
- Created small testing instances with Android Wear and Android Auto.
- Participated in the full lifecycle development process from product definition.
- Used Crashlytics to track user behavior and obtain mobile analytics.
- Solid background in Android UI, Android SDK, Android design patterns.
- Use of Implicit Intents.
- Included dependency injection with Dagger 2 to help with the mock building in unit testing.
Android Engineer
Responsibilities:
- Utilized Shared Preferences to ensure data consistency.
- Added support for Android Pay for contactless payments.
- Built and maintained common code libraries used in phones, tablets, TVs, smart watches and automobiles.
- Introduced Navigation Drawer and Tabs, custom and compound views to the project.
- Configured Git and Bitbucket servers as the software version control tools.
- Enhanced the UI/UX to follow the guidelines provided by Google’s Material Design.
- Setup proper interactions of the front-end design and implementation with backend servers.
- Collaborated with team to architect back-end services and databases for the app.
- Consumed SOAP web services with the kSOAP library.
- Created several custom and compound UI components.
- Secured the information and user data with an SQLCipher instance and working with HTTPS requests.
- Created and debugged many Business Rules.
- Solid understanding of Android app development life cycle including Google Play and Amazon App Store compliance policies and submissions requirements.
- Made use of Activities and Activities for Result and RecyclerViews to get a better performance of the application.
- Considerable experience debugging and profiling Android applications.
- Worked with Volley for consuming RESTful web services.
- Recommended and implemented changes to the Architecture of some legacy data structures to better support our primary user cases.
- Prepared the app to work well on phones and tablets.
- Have participated in innovation, design, and architecture of the apps.
- Implemented EventBus to facilitate the communication between processes in the app.
- Refactored un-optimized pieces of code to guarantee maximization in the use of resources.
- Participated in the decision-making process to choose the appropriate technologies based on the requirements.
- Used native and third party technologies to optimize the app functionality including Eclipse, NetBeans, Java, Custom Views, Web Services, JSON, Flurry, Universal Image Loader, SQLite, Fragments.
- Supervised the implementation of the Push Notifications setting up the Google developer account and creating the local key in the app base-code.
- Used Volley for all web service request.
Android Engineer
Responsibilities:
- The application was written natively with the Android SDK, and it supports devices starting from KitKat.
- Dalvik Debug Monitor Server (DDMS) for debugging and testing.
- Have managed a large team of engineers and remote contractors encompassing a variety of Android specialties.
- Implemented the cipher method for the storage of sensitive data such as passwords within the Android application.
- No UI/UX team involved in the process.
- Supported two other languages such as Spanish and German.
- Worked with agile development to adapt the applications to the different needs of the clients.
- Implementation of different user interface components such as WebView, ImageView, TextView and ListView to display the data for the application.
- Used the Dalvik Debug Monitor Server (DDMS) for debugging and testing.
- Resolved issues, fixed bugs and optimized the application.
- Supported multiple screen resolutions using different layouts for portrait and landscape.
- Used the location API, Maps View, and Google Maps.
- Supported multiple languages in the production build using the capabilities with string resources.
- Including support for backward animation using NineOldAndroids library.
- Experience developing rich application UI’s.
- Used Parcelable to serialize Java objects from Activity to Activity.
- Investigated ideal new External Libraries, and created a report highlighting pros and cons of each and making recommendations for implementing a fill team strategy.
- Kept abreast of industry trends and technologies, being prepared to apply them quickly.
- Created a web application used to establish a responsive design and look-and-feel with the app.
- Strong understanding of multi-tier web architectures, and OO design patterns and concepts.
- Established the coding standards to be used in the Android development.
- Created an exported Content Provider to share color findings with other applications.
- Enhance the User Experience with the implementation of the Tab Navigation.
- Used Itext to generate pdf files from a controller.
- Created robust automated unit/functional test suites and deployment scripts.
Web Developer
Responsibilities:
- The program was implemented in Java and using the Eclipse IDE
- Designed a PostgreSQL database with multiple entities and several relationships.
- Tested with Junit and the mock design pattern
- Maintained a standalone desktop application to manage digital documentation.
- Used JDBC to interface with MySQL for the native program
- Performed requirement gathering sessions to clarify and start up with the development process.
- Created website front end and templates using HTML and CSS
- Implemented Subversion as the Version Control Software tool.
- Implemented PHP frameworks to generate back-end services.
IT SPECIALIST
Responsibilities:
- Participated in the software support for end-users.
- In charge of the requirement gathering process.
- Documented integrations with internal and external services.
- Extended Java SE and Visual Basic applications that were used to manage small food business.
- Coached and mentored Junior Java developers helping them fulfill short and long term goals.
- Company’s network maintenance and support.
- Computer equipment installation, repair and maintenance.
- Scripted Python functions to help with the data and entity simulation.
- Update websites for the purpose of scripted calls