Mrigank Shekhar Srivastava
Visa Status: H*-B
email: ********@****.***
phone: 518-***-****
Professional Experience:
Keypixel Software Solutions - September 2019 to Present Role: Android Developer
Project: American Express
Responsibilities:
• Involvement in the feature discovery process when the Product Manager introduces the flow and designs. This entails understanding individual stories, adding feedback on how the Android platform has solved similar problems in the past or commenting on ways to deal with components that are being introduced for the first time.
• Taking responsibility for stories assigned and making sure they are developed, unit & instrumentation tested and ready to be handed over to the QA team for further testing.
• Once the feature is released and in the production, troubleshooting and fixing bugs that are brought to the attention of the Android platform through the QA team.
• Engage in meetings to decide the contract between the front-end and back-end which serves as a handshake between all the platforms concerned and is the source of truth as far as data is concerned.
• Using Kotlin as the primary coding language, the modern MVI architecture to structure the app and dependency injection
(Dagger 2) to make the code reusable, easy to refactor and easy to test.
• Developing user-friendly UI’s using widgets like Menus, Dialogs, Buttons, Edit Boxes and selection widgets like view and scroll as per client needs. Designed the Custom Dialog, using the Fragment Activity.
• Using Jetpack Compose to create modern and interactive UI designs which are less resource consuming than the previously used XML components.
• Making the Restful Service Calls asynchronously at the various stages of the app development cycle using RxJava or Coroutines and parsing the JSON responses back from the web servers according to the application requirement.
• Providing junior engineers feedback and mentoring them through code reviews and syncs.
• Developing detailed test plan and test summary documents that outline the tests to be performed for the given requirements and the results of these tests, summarized in client discovery sessions.
• Using third party libraries like Retrofit for providing powerful framework for authenticating and interacting with API's and sending network requests, used to inject views.
• Extensively working on designing the layouts keeping in mind the compatibility of different screens and their resolutions.
• Using ADB logcat tools for testing and debugging purposes. Used Espresso and Junit tools for testing.
• Providing feedbacks in retro meetings on how the development process could be improved and bring up issues faced in the previous development cycle so the team can offer solutions to improve the velocity. Education:
Master’s in Computer Science at SUNY Albany – 2017 to 2019 Bachelor’s in Computer Science at Manipal Institute of Technology – 2010 to 2014 Technical Skills:
Languages: Kotlin, Java, J2EE, C, C++, JavaScript
Reactive Programming: RxJava, Coroutines
Databases: MySQL, SQLite.
Web Services: Restful, JSON, GSON
IDE'S: Android Studio, Visual Studio, IntelliJ.
Libraries: Picasso, GSON, Http Client, Retrofit
UI: Jetpack Compose, XML
Version Control: Git
Methodologies: Scrum, Agile, Waterfall
Tools: Junit, Espresso, Gradle
Architectural patterns: MVC, MVVM (Model-View-ViewModel), MVI(Model-View-Intent) Personal Project:
https://github.com/MRI1822/MyMVVMCoroutinesDaggerApp