Senior Android/web/internet Of Things (iot) Software Developer Resume
Denver, CO
SUMMARY
- 12+ years of Software application development.
- 7+ years of Android application Development.
- 5 published Enterprise Level Android applications.
- Sound understanding of HTTP and REST - Style web services.
- Conducted interviews and contributed to the growth of the Android project team.
- Able to effectively articulate Android app coding solutions and rationale for these decisions.
- Ability to ask the right questions, provide feedback to stakeholders, break down tasks, and create a plan to achieve the intended result.
- Ability to research, consult and guide decisions on Android mobile architecture and technical strategy.
- Continuously research, test, and implement new techniques, Android frameworks, and utilities.
- Ability to architect, design, develop and test Android mobile applications from scratch.
- Conducted business and technical Knowledge Transfer sessions for Android developers, and cross-functional teams.
- Comfortable with version control tools such as Git and various GUIs for Android repositories.
- A proponent of coding best practices based on Object-Oriented Application Design Principles applied to Android development.
- Versed implementing Confidential .O.L.I.D. principles for easy to maintain and test applications.
- Commitment to getting results for time-sensitive mobile app launches, promotions, and events.
- Well versed in Test Driven Development using several testing frameworks such as JUnit, Mockito, JaCoCo, Cucumber and Espresso.
- Considerable experience debugging and profiling Android applications.
- Configured and initialized multiple cloud integration services including Parse, Firebase and Google Cloud Messaging on Android apps.
- Ability to manage competing priorities in a complex Android app development environment and maintain high productivity and high quality.
- Experience programming web applications and interfacing/setting up protocols for communications between devices and the Internet of Things (IoT).
TECHNICAL SKILLS
Programming: Android SDK, Kotlin, Java, C#, Python, JavaScript, HTML, CSS3, C++, TypeScript
Code Editors: VSCode
Database Management: SQLite, Firebase Realtime Database, Room, MySQL, Oracle SQL, MongoDB
Version Control: Git, GitHub, GitLab, BitBucket
Testing: JUnit, Mockito, MockK, PowerMock, Espresso, Robolectric, MonkeyRunner, Robotium, Cypress.io,, JaCoCo, Cucumber
Architecture: MVP, MVVM, MVC, Builder, Factory, Façade, Proxy, Command, Singleton, Observer, Visitor, Interpreter
Reporting: Play Console Reports, Firebase Crashlytics, Crystal Reports, InstaBug, Fabric
Dependency Injection: Koin, Dagger2, IcePick, Dagger 1, ButterKnife
Threading: RxJava, RxAndroid, Kotlin Coroutines, Intent Service, Handler, AsyncTask, Threads, Loopers and Loaders
Views: Custom Views and ViewGroups, Android adapter views
Cloud API: Google Maps API, Google Directions API, Activity Recognition API, Firebase Services, AWS S3
Web Services: Volley, Retrofit, OkHttp, OkHttp Interceptors, JSON, XML, GsonConverterFactory, Postman, CharlesProxy, Axios
Multimedia: MediaPlayer, Glide, Picasso, Universal Image Loader, Exoplayer, Youtube SDK
Software and OS: Windows OS, Linux, Mac OS
Continuous Integration: Jenkins, CircleCI, Travis, Hudson, Bitrise
Integrated Development Environments (IDE): Android Studio, IntelliJ, Eclipse, Visual Studio, NetBeans
Project Work Management and Collaboration Tools: Jira, Confluence
Agile Methodologies: Agile Scrum, Pair Programming, Xtreme Programming
Android Development: Sensor Manager, Location Manager, Bluetooth Low Energy, ProGuard, NineOldAndroid, Gradle, Gradle KTS
Parsing Libraries: GSON, Moshi, Jackson, SimpleXML
Miscellaneous Libraries: EventBus, Stetho, Timber, Lottie Animations, ReactJS
Cloud Messaging: Firebase Cloud Messaging, Google Cloud Messaging, MixPanel, UrbanAirship
Static Code Analyzers: Lint, Ktlint, Detekt, FindBugs
PROFESSIONAL EXPERIENCE
Confidential | Denver, CO
Senior Android/Web/Internet of Things (IoT) Software Developer
Responsibilities:
- Created the UI using ReactJS in accordance with user-specified design requirements.
- Implemented the application program interface (API) endpoints and functionality in the backend using Android Studio.
- Used VSCode to create the UI in ReactJS.
- Implemented Axios to call REST APIs in UI.
- Used Android Studio to implement the RESTful API endpoints in Java.
- Tested the API endpoints using Postman.
- Created unit tests to test code in Android Studio using JUnit.
- Created automated test suites for UI using Cypress.io.
- Tested code updates provided by the manufacturer of the IOT electrical power grid device.
Confidential |Detroit, MI
Senior Android Developer
Responsibilities:
- Worked on Android data binding using the BaseObservable class and Jetpack components.
- Communicated effectively with the android team using Slack and Trello.
- Created and tested new features in MVVM architecture
- The application was refactored from an MVC architecture to an MVVM architecture.
- Tracked and fixed all bugs using Jira and Instabug
- Implemented consumption of RESTful webservices using GSONConverter with RxJava using the Retrofit library.
- Used animation to improve the user experience making the application more responsive as well as make the application more presentable
- Utilized RxJava and RxAndroid to manage multithreading with RxJava Observables
- Used room database to cache API responses for offline usage
- Migrated some code from Java to Kotlin while maintaining error free code.
- Worked extensively with Android Jetpack Components for a smooth UI experience with LiveData and lifecycle observers.
- Worked in an agile development environment throughout the development process.
- Performed extensive unit tests to ensure error free code upon stable releases.
- Used support libraries for backward compatibility with much older Android versions.
- Assisted with code reviews on every PR to ensure quality code and a stable development process.
- Mockito testing suite was used along with Junit to create and perform tests on the application code.
- Used RecyclerView extensively to display list data from RESTful web services proficiently
- Created a push notification to alert users of latest deals.
Confidential |Brentwood, TN
Senior Android Mobile Developer
Responsibilities:
- Used RecyclerViews to display information obtained from web service calls, using Retrofit and RxJava
- Used Room DB to store information locally on Android device.
- Architecture implemented was MVP and along with various other design patterns such as Singleton, Façade etc.
- Created dynamic UI using ConstraintLayout and followed Material Design guidelines.
- Used Retrofit with RxJava caller adapter factory to consume RESTful API calls.
- Implemented various animations across the Android project to make the application more appealing as well reactive to users’ input.
- Used Glide image loading to load and to crop image into the UI with remote image URLs.
- Used Glide to reduce the APK size by storing all image resources remotely and adding loading them at runtime, taking advantage of Glides’ auto-caching.
- Implemented new application features in Kotlin and used the classes in with Java classes.
- Managed user preferences by storing them into shared preferences.
- Implemented OOP throughout the entire development of the project enforcing SOLID design principles.
- Implemented TDD using Junit for unit testing and Espresso for automated UI testing.
- Performed code reviews of former developers, to ensure and maintain good quality of code.
- Used support libraries for backward compatibility with much older Android versions.
- Assisted with code reviews on every PR to ensure quality code and a stable development process.
- Mockito testing suite was used along with Junit to create and perform tests on the application code.
- Developed and worked on Low level embedded systems projects which involved developing bare-metal and RTOS based applications, device drivers.
Confidential |Cincinnati, OH
Android Mobile Developer
Responsibilities:
- Used Android Studio to develop the functionalities for Mobile application
- Implemented unique design and built features in the Android application
- Collaborated with cross-functional team to define and design new features
- Unit-test code for robustness, including usability and reliability
- Reviewed code for bugs and to improve application performance
- Evaluated new technologies for optimal development efficiency
- Responsible for design of user interface using various custom layouts, buttons, dialog boxes, and form widgets
- Inserted applicable code to capture the various button and text field events and implemented the desired action for each of the widgets
- Displayed lists from the database using web views, list views, and populated lists
- Handled authentication, API capture, file stream download, and intent handling
- Responsible for consuming REST services and getting and parsing JSON response to get the required information to display in the Android interface
- Created UI and functionality for authentication feature and used Shared Prefernces to manage user credentials
- Involved in development and enhancement of features to restrict usage based on Authorization and Authentication tokens
- Used NoSQL database to maintain the data
Confidential | Rochester, MN
Android Mobile Developer
Responsibilities:
- Involved in requirements gathering, UI design, and application development
- Used Android Studio IDE and Android SDK to write application logic
- Developed the application using MVP architectural pattern
- Worked on UI design for the application per the client requirements
- Expertise in using SQLite, Java, XML, JSON, Google Play Services API, and RESTful APIs
- Implemented Android Bluetooth and Location Connectivity components
- Used JIRA platform to track productivity and tasks provided to accomplish the project
- Utilized Git to update the repositories and to collaborate with the team by using GitHub to check for updates and conflicts
- Worked on SMS, GoogleMaps, Email, and Geo-Fencing enhancements
- Created code to generate the accelerometer for the location services
- Generated code to create Latitude and Longitude values that trace out location services
- Employed automated testing using Espresso
Confidential | Wilsonville, OR
Android Mobile Developer
Responsibilities:
- Participated in Software Development Life Cycle for analysis, development, testing, and deployment of the application
- Developed the Android application using Eclipse IDE, MVP architecture, and Java coding
- Managed competing priorities while maintaining quality and high productivity
- Followed an Agile development process on the Android team
- Collaborated with cross-functional teams to define, design, and publish new features
- Used Android notifications to send reminders to the user interface
- Responsible for design of multiple layouts of the Android application
- Improved the app’ Confidential layout rendering by optimizing the view hierarchy in all resources
- Worked with Picasso library for image rendering in ListViews
- Implemented sorting options for search items based on categories
- Performed unit testing using JUnit and Mockito
- Resolved issues, fixed bugs, and optimized the application
Confidential | Clinton, MD
Software Developer
Responsibilities:
- Participated in Software Development Life Cycle for analysis, development, testing of the eVisit Android Application before its publishing
- Worked with Fabric to enable crash reporting for development and productive flavors
- Followed Agile Scrum methodology, with 2-week sprint and 4 sprints release cycles.
- Enabled Push Notification functionality using GCM.
- Added User Analytics tracking feature with Google Analytics
- Worked cross functionally with a Backend Engineers, UI/UX Designers and QA Engineers.
- Implemented Master Detail flow to support first Honeycomb tablets with Fragments.
- Integrated Location features using the Android SDK Location Manager and Maps API
- Integrated Picasso for network image loading.
- Participated in requirement gathering meetings to develop the mobile vision of patient appointments application.
- Independently troubleshoot, maintained, and monitored the LIS database ensuring functionality and interoperability
- Managed complex problems and ensured effective resolutions
- Spearheaded the implementation of security measures and actions to ensure proper security and avoid intrusions
- Collaborated with senior officials and analysts to develop and execute action plans that improved business operations and ensured compliance with HL7, HIPAA and HITECH regulations
- Implemented web application using C# and ASP.NET and MySQL for the persistence store, to enable the hospital’ Confidential Laboratory Information System (LIS)
- Developed quality assurance procedures on data flow of the LIS and the hospital Electronic Medical Record system
