We provide IT Staff Augmentation Services!

Android Architect, Senior Android Developer Resume

5.00/5 (Submit Your Rating)

Seattle, WA

SUMMARY

  • 12 years of experience on different IT projects in all the stages of the software development cycle (attendance to clients, planning, analysis, design, testing, deployment, delivery, and maintenance), for different sectors: telecommunications, services, government, research and financial.
  • Several valuable skills developed: strategic planning and project management; negotiation of goals, resources, and procurements; effectively communicated with stakeholders; forecast, discovery and analysis of problems and risks; proposal of creative, innovative, and viable products and solutions; oriented to results in great quantity and quality under pressure.
  • Experience in designing and development of commercial consumer application for Android mobile devices with extensive user interface development.
  • Proficient in Android application framework: Activities, Intents, Services and Content Providers.
  • Experienced with Android SDK tools: Debugger (DDMS), Device Manager (AVD).
  • Integration of Android based mobile applications with Restful web services.
  • Excellent in modeling & translating business models & requirements to UML models.
  • Proficient in preparing and executing joints and interviews according to the stakeholders and project.
  • Understand, clarify, specify, detail, delimiter, communicate and gather requirements, necessities, opportunities, and problems intrinsic and emerged from the project management and development.
  • Experience applying design patterns.
  • Worked with methodologies such as Scrum, RUP, and Object - Oriented Analysis and Design.
  • Experience developing in Android using Java, Kotlin and C++, Ruby on Rails.
  • Efficient in developing complex SQL queries using Oracle, Microsoft SQL Server, and MySQL as DBMS.
  • Experience with SQLite Database, Google Maps API, MapQuest API and Push Notifications.
  • Developed advanced Mobile applications design and development using the latest Android Studio version and Eclipse IDEs.
  • Experience using version control software such as GitHub & BitBucket for effective code maintenance, tracking and logging.
  • Experience in Android Material Design (Tabs, Themes, New Colors, RecyclerView and CardView). worked with Android third party libraries like Retrofit, Rx-Java, Volley, GSON, Picasso, etc.
  • Experience in developing of Hybrid Mobile Applications by using HTML, CSS, and JavaScript.
  • Excellent knowledge in AngularJS, Ionic Framework and Cordova.
  • Experience in RESTful API’s to integrate mobile applications to server-side systems.
  • Worked on developing reports using Jasper Reports.
  • Experienced on installing Linux and configuring environments to deploy applications.
  • Experienced on planning, designing, and executing test cases with different granularity: Junit, modular and integration tests; and in different environments: development, testing and production.
  • Worked on production support, maintenance and fixing errors discovered on production time.
  • Experienced on developing complex systems using structures such as graphs, graphics, threads synchronization, compilers, mathematical and biochemical concepts.

TECHNICAL SKILLS

Technologies: Android SDK, NDK, J2EE, Spring 2.0.x, STL, Web Services, JavaBeans, Java Script, JSP, Eclipse, Xcode, Kotlin.

Language: Java, Kotlin, Ruby, Python, HTML5, CSS3, JavaScript, PHP, C and C++.

Build & CI Tool: Ant, Maven, Gradle, Jenkins.

Servers: Apache Tomcat, WebLogic, WebSphere and JBoss.

SCM Tools: SVN, Git and Jira.

Web Tech: HTML5, JavaScript, CSS and XML.

OS: Windows XP/Vista/7, Linux (Ubuntu), Android, Mac OS, Windows (2000/XP Professional, Vista, Windows 7, Windows 8), Ubuntu and Fedora.

Framework: Struts, Spring, Junit, AJAX and JDK.

Database System: Oracle, MS SQL Server, MySQL and SQLite.

Web Services: REST, SOAP, XML and JSON.

Others: Amazon Web Services (AWS), jQuery, JSON, MS Office, Adobe Photoshop CS5, Adobe XD CC and Adobe Muse CC.

IDEs: Android Studio, Android Eclipse IDE (ADT), NetBeans, Visual Studio (2010, 2012).

CMS: Apache and WordPress.

Methodologies: Agile, SCRUM, Waterfall, PMP and UML.

PROFESSIONAL EXPERIENCE

Confidential, Seattle, WA

Android Architect, Senior Android Developer

Responsibilities:

  • Worked extensively on various stages of Application Development, viz., collecting requirements, and providing guidelines for design, creating application architecture, implementation that includes various stages in development, QA, code signing and release into market.
  • Used the MVP pattern for structuring and organizing the code developed.
  • Created UML diagrams of the core architecture of the app.
  • Reviewed errors handling layer and proposed redesign of the same aligning it, using Retrofit and OkHTTP libraries, specifically the response. Code () method to handle 4XX (Client errors) and 5XX (Server Errors) like 404(Bad request), 408 (Request Timeout), 500 (Internal Service Error), 503 (Service Unavailable).
  • Proposed to used Dagger to reduce boilerplate code and avoid coupling.
  • Review all the flows that launch crashes (try-catch methods in the errors layer) in the Firebase Console to fix them.
  • Creation of new animations considering weight of videos used and duration time according to different android devices. I animated Buttons and Image Views changing their position while some videos were played in the background to make attractive and funny the user experience. The animations were developed with Java code and XML. Used Interpolators classes to accelerate or deaccelerate animations.
  • Included accessibility layer to the app. The app includes lots of animations and images that were aligned to be accessible. When accessibility was turned on, animations were turned off and vice versa.
  • Changed the accessibility tree of components in order to align the app behavior with the expected when talkback was turn on, so the user could review and check all the promotions, offers and coupons in an smooth way.
  • User Accessibility Scanner to review the accessibility in the app was implemented correctly.
  • Development of on and off-line features for the app. Implemented accessibility according to the different android versions.
  • Used of Shared Preferences to store user preferences and make a customized user experience
  • Used Activities, Fragments, Adapters and Listeners to create and attractive, intuitive and interactive UI.
  • Used Coordinator Layout, SwipRefreshLayout, AppBarLayout, Layer Drawable, Gradient Drawable for an easy navigation and avoid ANR.
  • Use of Push Notifications and Firebase to provide information through the app.
  • Used GitHub for version control and Jenkins for continuous integration. Created procedures for Jenkins integrating new parts of the developed code.

Environment: Android10/, Java, Firebase, Retrofit, OkHttp3 and Gson and StartUML, Agile and UML.

Confidential, Seattle, WA

Android Architect, Senior Android Developer

Responsibilities:

  • Analyzed the project code (using UML diagrams) and determined the guidelines to solve multiples issues and errors the project was facing.
  • Offered the big picture of what was the current status of the project, which modules were the ones that were showing more issues and how to solve the mayor quantity of those using the VIPER design pattern and SOLID principles.
  • Proposed to migrate the project using MVVM pattern (since it is a better fit for Android development instead VIPER pattern); used Expert pattern (process data in the Server through the DB instead processing in the application); and handle making the application more reactive with RxJava (just changing the Retrofit data requests Call by Observables)
  • Proposed, installed, and used SonarQube and SonarLint to analyze application code and detect defects and errors.
  • Solved all the issues and errors presented in the accessibility (handling talkback, checking all important components are mentioned and in the correct order while the user navigates with gestures, setting content descriptors and proper messages in all important components and making talkback to ignore those which are not important, setting focus and making focusable components in the expected order) and security modules.
  • Developed code solutions for hundreds of errors and crashes found in the app.
  • Lead the testing team through determining the tasks to do and assigning them; and training them.
  • Analyzed the project requirements and code as well, to develop tests for different levels: unit, integration, and UI tests.
  • Decided which technologies and tools to use for testing and developed different test cases.
  • Developed screens using components such as Recycler View, Card View, Constraint Layout, View Pager, Drawer Layout, SwipRefreshLayout, GridLayout, etc. to make screens to be easy to navigate; to make calls, receive calls, make group calls with video, etc.
  • Used third party libraries as Exoplayer, CircleImageView, Flexible Adapter (davidea: flexible-adapter), and emoji's libraries (vanniktech:emoji-google) to show profile images (as in WhatsApp), use emoticons in the chats and make them accessible (to be read when the user swipes among the emoticons and text messages).
  • Used WebRTC for calls and messaging; BLE for transferring files.
  • Recoded parts of the project with Kotlin, especially those that were facing lots of crashes. Kotlin helped to reduce drastically bugs.

Environment: Android 9; Java & Kotlin, WebRTC RxJava, Retrofit, OkHttp3, Gson, Junit, Mockito, PowerMockito, Espresso, SonarQube, SonarLint, StartUML for creating UML diagrams. Agile, UML.

Confidential, Columbus, OH

Android Architect, Senior Android Developer

Responsibilities:

  • Played the role as leader: gathering requirements; planning the activities; guiding Android developers and testers; solving any problem faced and developing features using the agile
  • Proposed the architecture guidelines as well as the stack of technologies and tools to be used in the project. It was used Kotlin to develop part of the project (specially to avoid boilerplate code and handling possible crashes).
  • Created and handled the git repository for the project. Also was in charge of performing code reviews, merging branches, solving merging conflicts, generating APK of the application, preparing and showing demos to the stakeholders; and finally creating videos that shows the application functionalities that fulfill the acceptance criteria of the requirements.
  • All the main structure and architecture of the application was developed using: A Base layer (BaseActivity, BaseFragment, BaseModelView); third-party libraries using Dagger, Retrofit & Rx-Java
  • Used Kotlin to Developer the Modules and other codes using Lambda expressions.
  • Created JUnit and Instrumentation test cases for testing the application functionality and flows.
  • We used JUnit and Mockito for creating the unit tests and Espresso UI test cases.
  • The design pattern used to organize the code is the MVVM with Databinding.
  • Added and implemented Confidential DEX technology in the application (which allows to connect a tablet or mobile phone to a monitor and shows in both screens the application views).
  • Worked with ConstraintLayout as main Layout for creating the Views through all the project.
  • Designed the application to work in four different modes: portrait and landscape modes (coming from Android); and single and dual DEX modes (coming from Confidential DEX functionality).
  • Designed the application to work with different screen sizes and pixel densities (mdpi, hdpi, xhdpi, xxhdpi and xxxhdpi as the application can be shown over a monitor.)
  • Started elaborating an architecture proposal considering two main areas: the analysis level (guidelines: BPR Business Process Reengineering and a deeper User Experience design) and the design level (guidelines: SOLID Principles and Clean Architecture).
  • Performed an exhaustive searching for different HTTP libraries and tools. The result of such searching was captured to make a healthy decision about which libraries to use.
  • Created a document that was used to decide over Analytics & Crashlytics tools are more suitable
  • Performed a coding review before the code could go to the release and add as many JUnit and Instrumentation test cases for the features developed as were required.

Confidential, Atlanta, GA

Android Architect, Senior Android Developer

Responsibilities:

  • All the GUI has followed all the prototype designs using: compound views, layouts such as: LinearLayout, RelativeLayout; views as WebView, ViewPager, RecyclerView, CardView, etc.; resources such as: colors, dimens (dp for sizes and sp for fonts), specific fonts, drawables, etc.; animations for showing a new screen and when the same is sent to the background.
  • All the requests to the back end were developed and handled with Retrofit in conjunction with RX-Java and RX- Android. It used handlers (for accessibility and animations) and threads as well.
  • Designed the custom Action Bar, custom ProgressBar while making service calls. Consumed Restful web services to fetch user profile and daily transaction details report data.
  • Worked in an agile environment using Scrum, iTrack with Jira for handling the tasks, in sprints with a time frame, which started with two weeks and now are of one week (the development process was improved and accelerated). I used GitHub as repository (creating a branch per new release and per feature). All the tasks planned were done on time.
  • Developed a set of architecture diagrams with UML that shows the main classes of the application, which is useful to detect quickly where is the appropriate place to locate new code for a functionality that must impact a part of or the whole app.
  • Every single sprint development was tested from the 4.0 to 7.0 Android versions using simulators and real phones. I used the real phones that represents the 80% of the market for testingto assure quality and performance. I used Junit and Mockito for unit testing, and Espresso for UI testing.
  • Used Systrace to analyze performance of the app and find bottlenecks in it and create a plan to change them and increase the app responsiveness and make it quicker.
  • Reviewed the frequent errors presented in Fabric and in the Google Developers Console to fixed them in the code app. The app diminished the crashes drastically and the rating increased from 3.4 to 3.8 meanwhile the complains from users about related functionalities diminished. The client got satisfied for this achievement. Used reCAPTCHA V2 as security filter for sending the requests.
  • Created a list of HTTP errors to handle them in most appropriate UX way whenever they could be sent from the back-end systems. It was based on one of the recommendations of the best practices done when using Rx-Java.
  • System architecture development with UML & design patterns (MVVM, MVP, MVC, Factory, etc.)

Environment: Android 6 & 7, Kotlin, Material Design; custom and compound views; Rx-Java, Background Processing (with Intent services, Handlers & Threads); third party libraries such as Retrofit, Dagger, Volley, Picasso, ButterKnife; use of Google Analytics, testing with JUnit, Appium-Ruby, Mockito and Espresso, Agile and SCRUM, PMP and UML.

Confidential

Senior Android Developer

Responsibilities:

  • Responsible for design of the user interface using various custom layouts, buttons, dialog and alert boxes and widgets. Inserted suitable code to capture the various button and text field events and implemented the desired action for each of the widgets.
  • Documented the requirements. Creation of systems installation manuals
  • Involved in the analysis, design, and coding of the internal mobile app of Fonacot. Worked with the Android SDK and implemented Location Connectivity components.
  • Design and development of Android native application (used NDK).
  • Review and troubleshooting of bugs found in the systems of Fonacot.

Environment: Android, NDK, Java, J2EE, (Aspects, MVC, etc.), jQuery, AJAX, HTML5, Web Services and Spring, SCRUM and PMP.

Confidential

Java Programmer

Responsibilities:

  • Actively perform detection, estimation and planning of the project.
  • Created the architecture of the system (use cases view, logic view, process view, implementation view and deployment view). Resolution of problems and errors discovered.
  • Created Jobs (Spring classes) and Servlets to execute the process that sends the emails, automatically (executed daily in a specific time) and when the user indicates it to.
  • Developed Sprint Zone’s EPP payment module. Created fragments, UI layouts, communicating with server using REST, parsing JSON using Gson etc. Created many complex queries to select the data.
  • Developed analytic reporting framework for Adobe analytics for Sprint Zone.
  • Utilized web-services (HTTP based, XML, SOAP, JSON or other services), to tie our applications to critical server-side APIs. Configuration and deployment of the system obtained.
  • Created PDF report that contains all the loans that fulfill the filters, using Java iText library.
  • Created HTML with CSS template to send as body of the email.
  • Correction of errors and bugs found in the system and perform deployment of the system.
  • Reverse engineering to get Java source code from .class code.

Environment: Java EE, Java Mail and iText, JNDI, Servlets, Struts 1, Spring, Oracle, Unix, WebLogic, Spring, Hibernate, LDAP, Krutchen Model for architecture, WebServices and StartUML, SCRUM, PMP.

Confidential

Android Mobile Developer, Java Programmer

Responsibilities:

  • Manage development team to integrate and develop the code.
  • Redesigning of two modules of the existing system (in .Net) to reconstruct them in Java using the design patterns MVC, Factory and Expert, achieving a reduction in development time planned and system complexity. Analysis and design of the modules of the next development phase.
  • Development of use cases: Loan Request, Announcements, Notifications and the approval and rejection of loan and holidays requests (4 use cases, 2 of which were the main of the subsystem).
  • Designing and development of SQL queries to get statistics about the use and performance of the network and the 10 sites with the major bandwidth usage of a specific period.
  • Development of reports which calculate the charges to do, due the unavailable time of equipment or infrastructure at operating time, to some clients of Bestel. Development of different use cases regarding catalogs, reports, notifications. Design proposals to solve the problems found in the system.
  • Development of the user case where a user selects a purchase, and the corresponding details appear. Inside this detail is the place where the client bought; if this detail is chosen, a Google Map will appear indicating the exact point where the purchase was made.
  • Recording of purchases with GreenDAO. Analysis of developed code and proposal of redesigns.

Environment: Android Studio, Android 4.0, Android SDK 4.1, SDK para-Android, Java EE, JSF, Struts 1.1, Spring, PrimeFaces, Microsoft SQL Server, GreenDAO, SQLite, Tomcat, Hibernate, WebServices, IntelliJ IDEA, Log4j, MyBatis, Jasper Reports, Oracle, Eclipse, NetBeans, Oracle, Maven SCRUM, RUP, UML.

We'd love your feedback!