Professional Summary
*+ years of experience in Android/Mobile Development.
* ********** ********* **** ** the Play Store.
6+ years of experience as in Software Engineering.
Android experience with Java, Kotlin and hybrid Kotlin - Java Android projects.
Experienced in writing technical documents and designs relevant to the development process.
Communicated effectively with stakeholders to manage expectations and gather business requirements translating them into technical specification documents and solutions.
Utilizes Test Driven Development (TDD) and Continuous Integration for test automation to ensure high quality and easy to deploy app updates.
Proficient in Agile/SCRUM methodology and comfortable as a team member or team lead, contributing to or leading story estimation, Sprint Planning meeting, Sprint Retrospective, Backlog grooming and Daily Stand-ups.
Android Mobile application development employing OOP architecture and design patterns (ex: Singleton, Delegation, MVC, MVP, MVVM, Decorator, Proxy, Builder, Abstract Factory, etc.
Experience with Android SDK, debugging tools, memory management, and multithreading.
Experience transitioning code bases from Java to Kotlin or from one architectural pattern such MVVM with JetPack Architecture Components.
Detail-oriented Android developer and object-oriented programmer with experience in the entire software development lifecycle (SDLC). (Android mobile app requirements gathering – deployment).
Experience working with Android main components: Activity, Services, ContentProviders and BroadcastReceivers.
Adept at integrating various native Android SDK APIs such as LocationManager, Object Animator, FCM, BluetoothManager, SensorManager, etc.
Comfortable with various source control such as GIT, GitHub, GitLab, SourceTree, BitBucket, etc.
Works well with diverse Android development teams both local and offshore.
Experience with adding accessibility to end user Android applications
Android development team mentor assisting in code reviews and follow-up Java/Kotlin coaching.
Proactively performs extensive code and functional testing to ensure bug-free Android apps.
Experience consuming backend RESTful web services with JSON and XML based responses.
Experience troubleshooting issues including connectivity and integration issues.
Highly knowledgeable of Play Store submission requirements and publishing process.
Experienced with Android Layouts and using ConstraintLayout to build complex UI/UX.
Skilled integration with Android back-end services using RxJava, Retrofit and Kotlin Coroutines.
Adept at developing various unit tests using the JUnit, Mockito and PowerMock frameworks to ensure clean and stable code.
Experienced implementing application data persistence using Room, SQLite, SharedPreferences, External and Internal storage.
Experience developing Android apps for the phone and tablet platform using Android SDK and Android Studio development environment in a range of industries.
Experienced Android developer working on Business to Consumer Mobile apps and producing attractive and highly functional, Material oriented Android UIs.
Extensive experience consuming web service APIs using XML or JSON using Retrofit, OkHttp and GSON.
Communicated effectively with UI/UX designers, QA and Software engineers alike.
Work History
Senior Android Developer
Airbnb May 2019 to Present San Francisco, CA
App: Airbnb - https://play.google.com/store/apps/details?id=com.airbnb.android&hl=en_US
Unforgettable travel experiences start with Airbnb. Find travel adventures and new places to go far away or near to you, and access vacation home rentals, new experiences, and places to visit all around the world. Book everything for your trip or start earning money as a host.
Worked as a Senior Android Developer to ensure the application standards were on the highest level
Developed the application using the Android Studio IDE
Utilized RxJava to make asynchronous calls
Worked hand on hand with backend developers to establish the needs of the mobile team.
Heavily involved in the transition from Java to Kotlin as the main developing language.
Created several custom views.
Conducted Agile Scrum meetings for requirement gathering, planning and retrospectives.
Was involved in the development using constraint layouts for new screens.
Followed agile methodology and used Jira to track stories
Directed regular peer reviews.
Worked closely with the UI/UX, Testing and continuous integration team to ensure a high-quality product.
Participated in mentoring sessions with Junior developers.
Participated in internal hackathons sessions that allowed me to interact with members of different teams and technologies
Technologies Used: Android Studio, Agile Scrum, Sprint Planning, Requirement Gathering, RESTful API, SQLite, SCRUM, JIRA, Dagger2, RxJava, Kotlin, Java, Retrofit, RxAndroid, custom & compound views, Shared Preferences, Git.
Senior Android Developer
Doordash November 2018 to May 2019 San Francisco, CA
App: Doordash - https://play.google.com/store/apps/details?id=com.dd.doordash&hl=en_US
DoorDash offers the greatest selection of your favorite local and national restaurants -- more than 310,000 menus across 4,000+ cities in the U.S., Canada and Australia.
Worked as a Senior Android Developer to ensure the application standards were on the highest level
Developed the application using the Android Studio IDE
Use RxAndroid library and Retrofit support for API calls in conjunction with RxJava/RxAndroid
Persisted non-sensitive data with Realm database and ensured that the database was using encryption algorithms when persisting user information
Developed new features in Kotlin.
Implemented MVP architecture to reduce testing efforts and increase the code coverage of the application
Conducted some meetings for requirement gathering, planning and retrospectives.
Integrated different modules using Dagger2 dependency injection to ensure separation of responsibilities and create highly testable classes and objects.
Responsible to conduct a couple of Kotlin training sessions.
Conducted regular code analysis and refactoring sessions for legacy classes and code.
Worked closely with the UI/UX, Testing and continuous integration team to ensure a high-quality product.
Mentored Junior developers in emerging technologies and patterns such as Observer and RxJava.
Added several animations and transition.
Used Postman to test API services.
Used Firebase to track analytics and app crashes.
Followed TDD for our testing.
Technologies Used: Android Studio, Agile Scrum, Sprint Planning, Requirement Gathering, RESTful API, SQLite, SCRUM, JIRA, Dagger2, RxJava, Kotlin, Java, Retrofit, RxAndroid, custom & compound views, Shared Preferences, Git.
Senior Android Developer
Credit Karma May 2017 to November 2018 Seattle, WA
App: Credit Karma - https://play.google.com/store/apps/details?id=com.creditkarma.mobile&hl=en_US
From spotting identity theft to getting personalized loan and credit card recommendations. Ready to make financial progress?
Worked as a senior Android developer following the Scrum methodology
Used Jenkins as our CI server
Developed the application in Java using the Android Studio IDE
Utilized the MVP architecture develop a rich and highly testable application
Participated in the requirement gathering meetings with product owners; documented requirements and planned specs.
Relied on the Scrum methodology for task and process assignment and progress tracking with JIRA as the tool for managing issues and tasks.
Successfully integrated RESTful API backend with the application using Volley networking library.
Used Picasso and RxJava to manage images on multiple threads for improved performance.
Using Dagger2 dependency injection, integrated different modules and classes following SOLID principles.
Did unit testing using Junit and Mockito and for instrumentation testing used Roboelectric.
Heavily involved in the creation of custom reusable widgets to display the product and user information throughout the app
In conjunction with the UI/UX team implemented material design.
Mentored Junior developers in Android best practices, coding standards and various practices.
Constantly explored new trends and technologies such as Reactive programming.
Implemented the use of Android threads with Loopers, Handlers and Loaders, on several tasks which improved the application performance.
Implemented SQLite database for persistent data storage and fast data retrieval.
Implemented fragments to navigate through the app.
Mapped POJOs from JSON responses with third party libraries like GSON and Moshi.
Made use of Activities, Activities for Result and RecyclerViews to improve application’s performance.
Technologies Used: Android Studio, JUnit, Mockito, Roboelectric, Volley, RecyclerView, Jira, java, Git.
Android Developer
Acorns March 2016 to April 2017 Irving, CA
App: Acorns - https://play.google.com/store/apps/details?id=com.acorns.android&hl=en_US
Acorns is your guide to financial wellness. We’ll help you invest, save and spend responsibly for just $1, $2 or $3 per month. Supported by leading investors, innovators and press like BlackRock, PayPal, Ashton Kutcher and CNBC.
Communicated effectively with product owner to manage expectations.
Heavily utilized custom views to provide a more personalized user interface
Improved previous design harnessing benefits provided by the fragment implementation for the views
Helped implement Material Design UI/UX as well as alignment to guidelines.
Extensive usage of Recycler Views to show large amounts of data.
Integrated the new design of the application to provide a state of the art and improved user experience
Implemented push notifications with Firebase.
Participated in app QA.
Worked on writing unit tests using Junit and Mockito and instrumented tests using Espresso.
Implementation of a relational database in SQLite to synchronize the application with the server
Used Crashlytics to compile bugs and work on fixing those bugs.
Intensive use of handlers and loopers to handle thread communication.
Followed agile environment and pair programming.
Used Jira to track stories.
Technologies Used: Android Studio, RESTful, SQLite, SCRUM, Expresso, Shared Preferences, Git. Push notifications.
Android Developer
ALARM.COM
Vienna, VA September 2015 to March 2016 Irving, CA
App: Alarm.com - https://play.google.com/store/apps/details?id=com.alarm.alarmmobile.android
Allows users to remotely monitor and control their Alarm.com security system. See what’s happening at the residential or business property, arm or disarm the security panel, watch live video and recorded clips from security cameras, turn on or off lights, control the temperature, lock or unlock doors, and more.
Participated in the requirement gathering process with product owner.
Worked on writing unit tests using Junit and Mockito.
Collaborated with the design team, the usability specialist and the iOS team to design an easy to use unified application for both iOS and Android platforms.
Help implement push notifications using GCM.
Consume web services using retrofit and GSON.
Help implement a caching mechanism using SQL Lite.
Implemented a RecyclerView to show list of triggered camera events.
Create a custom view for the agenda.
Implemented fragments to navigate between agendas.
Re-designed the app navigation to include animated transitions between activities using CoordinatorLayout.
Technologies Used: Android SDK, Java, GCM, GSON, SQLite, Retrofit, Junit, Mockito.
*****.********@*****.***
Sahar Kheirkhah
Senior Android Developer
WORK SUMMARY
Airbnb.
May 2019 - Present
Senior Android Developer
Doordash.
November 2018 – May 2019
Senior Android Developer
Credit Karma.
May 2017 – November 2018
Senior Android Developer
Acorns.
March 2016 - April 2017
Android Developer
Alarm.com
September 2015 - March 2016
Android Developer
SKILLS SUMMARY
Android Frameworks
Material Design, RecyclerViews, CardView, SnackBar, ConstraintLayout, CoordinatorLayout, JetPack, Custom Views and ViewGroups, Content Providers, Services, Broadcast Receivers, AsyncTask, Android Wear, Animations, Object Animator, App publishing, SQLite, SQLCipher, AlarmManager, Content Resolvers, Loaders, IntentServices, Jobs, Handlers, Loopers, WorkManager, JobDispatcher, Tasks, SyncAdapters, Coroutines
Android Testing Frameworks
JUnit, Espresso, Mockito, Monkeyrunner, PowerMock UIAutomator, ViewHirarchy explorer, Android Profiler
Android Third Party Frameworks
RxJava, Retrofit, Volley, OkHTTP, GSON, Jackson, Moshi, Protobuff, Dagger, ButterKnife, Picasso, Robotium, Google Maps API, Glide, Fresco, Twitter SDK, Facebook SDK
Android Development Tools
Android Studio, Eclipse, Git, Travis, Circle-CI, Jenkins, Firebase, Crashlytics, Fabric, Google Analytics, Answers, MixPanel, Flurry.
Design Patterns
MVC, MVP, MVVM, Decorator, Builder, Factory, Composition, Façade, Visitor, Delegation, Singleton, S.O.L.I.D.
Relevant Non-Android Frameworks
RESTful consumption, HTML, JavaScript, JQuery, CSS, MySQL, Flex, e-commerce, Apache, PostgreSQL, Python, Ruby on Rails, Visual Basic, Microsoft Access
EDUCATION
Master of Science in Electrical Engineering and IT
Darmstadt University of Applied Sciences
Darmstadt, Germany.
Bachelor of Science in Electrical Engineering
Sadjad University of Technology
Mashhad, Iran.