Dino Bikic
Verified Expert in Engineering
Android Developer
Berlin, Germany
Toptal member since July 1, 2020
Dino is a product-driven software engineer with experience in the development process of robust and modern Android and back-end apps. He has worked with various businesses, from startups to large international corporations and remote companies. Dino focuses on creating a clean, testable, and efficient code that maximizes business value.
Portfolio
Experience
- Clean Code - 6 years
- Android - 6 years
- Software Engineering - 6 years
- Mobile UX Design - 5 years
- Agile Software Development - 5 years
- Mobile UI Design - 5 years
- Kotlin - 4 years
- Kotlin Multiplatform Mobile (KMM) - 1 year
Availability
Preferred Environment
Android, Kotlin, Rust, Full-stack
The most amazing...
...project I've developed was an incredibly secure crypto wallet used for payments and storage of crypto and FIAT currencies used by crypto enthusiasts worldwide.
Work Experience
Lead Software Engineer
Web Summit
- Worked on the front-end and the back-end side on multiple products in the mobile team, including the Android app, microservices, and CLI tools.
- Designed and implemented a server-side rendering engine as a GraphQL service written in Rust and using the Actix Web framework and its clients on mobile.
- Cleared out the tech dept by planning architecture changes and refactors and enforcing clean code principles.
- Wrote integration, end-to-end, UI, and unit tests across the mobile team's codebases.
Senior Android Developer
Web Summit
- Developed a white-label Android app for one of the biggest tech conferences in the world.
- Worked on all app features, including chat, video streaming, offline support, and advanced search.
- Served as part of a remote team of senior engineers, designers, and product people.
- Worked on a Kotlin multiplatform mobile project for a side project.
Senior Android Engineer
Xapo
- Developed the Xapo Android application as part of a team of seasoned Android developers.
- Focused on delivering high-quality clean code with testability and maintainability in mind.
- Collaborated with the product, design, and QA teams in defining the product and planning the work.
- Owned the Android team's CI and CD processes and ensured rigorous adherence to guidelines.
- Set up and maintained UI test integrations with TestRail and the Firebase Test Lab.
- Completed asynchronous remote work with a diverse team from around the world.
Android Engineer
Infinum
- Developed more than ten Android apps written in Java and Kotlin using clean architecture, applying the MVP and MVVM pattern and the reactive programming paradigm.
- Collaborated with designers to achieve Android UI/UX best practices.
- Assisted a wide range of clients, from banking and energy corporations to betting companies, sports championships, and various startups.
Experience
Motorsport Championship Android App
As the Android engineer, I participated in all phases of the project from visioning, architecture design, sprint plannings, app development, and A/B testing and feature discovery live at the races. The app's core feature is a custom map, implemented with markers, polygons, and polylines, which represent different areas and points of interest in the venue area. A custom CMS system was developed to provide a dynamic solution for map attributes that works for all the venues and all the platforms (Android, iOS, and web).
Other features include live race results (implemented with WebSockets), live audio stream from drivers cockpits while the race is in progress, championship standings, and driver statistics.
White-label Sports Betting Android App
I created a custom deployment scheme that would publish each of the app's new version to a self-hosted web server. This was done by creating a custom script for CircleCI, providing the possibility to deploy a new version of the app by merging the master branch to an app-specific branch, with the new version name as the commit message.
The hardest thing about this project was implementing the live betting feature since all the information about the matches, bets, and odds were coming from a WebSocket server. I developed a mechanism to convert the WebSocket events to RxJava events, which helped provide a smooth UI experience. A lot of edge case states can happen in the course of a live match (connectivity issues, odds changes, bets expiring, and bets being added).
Mobile Apps for Energy Companies in Netherlands
The apps were written in Kotlin; they followed clean architecture and MVVM with high test coverage. I helped implement a unique feature by modifying an opensource chart library to display energy consumption in real-time, with custom animations and the "endless scroll" functionality.
Other functionalities included:
• An option to pay your bills from the app.
• The ability to control your home thermostat.
• Live chat with a chat-bot and customer support.
• The option to enable redelivery of energy to the network with solar panels.
Education
Master's Degree in Computer Engineering
RITEH University of Rijeka - Rijeka, Croatia
Bachelor's Degree in Computer Engineering
RITEH University of Rijeka - Rijeka, Croatia
Certifications
Infinum Design Academy
Infinum
Skills
Libraries/APIs
Firebase Android SDK, RxKotlin, RxJava, Retrofit 2, Android API, Google Maps SDK, RxJava 2, REST APIs, Android Architecture Components, Google APIs, Google Analytics API, Google Gson, Facebook API, Apiary API
Tools
Firebase Test Lab, CircleCI, Firebase Analytics, TestRail, Figma, Braintree SDK, Gradle, IntelliJ IDEA, Android Studio, Android Jetpack, Bitbucket, GitHub, GitLab, GitLab CI/CD, Terminal, Firebase Cloud Messaging (FCM), Google Cloud Messaging, BTC Wallet, ExoPlayer, Jenkins, Cucumber, Sketch
Languages
Bash Script, Kotlin, Java, XML, SQL, PHP, GraphQL, Python, C, JavaScript, C#, Bash, Rust
Frameworks
Ktor, Dagger 2, Mockito, JUnit, Robolectric, Android SDK
Paradigms
Continuous Delivery (CD), Mobile UX Design, Agile Software Development, Scrum, Model View ViewModel (MVVM), Model View Presenter (MVP), Clean Code, Clean Architecture, Unit Testing, REST, Dependency Injection, Functional Reactive Programming, Mobile Development, Mobile UI Design, Cross-platform
Platforms
Android, Bitrise, MacOS, Linux, Raspberry Pi, Google Cloud SDK, New Relic, iOS, Mobile
Storage
RoomDB, SQLite, MySQL, PostgreSQL
Industry Expertise
Banking & Finance
Other
UI Testing, GitFlow, Minimum Viable Product (MVP), OkHttp, WebSockets, White Labeling, Push Notifications, H2DB, Remote Work, Technical Design, Software Engineering, API Design, Mentorship, Code Review, Mobile Banking, Crypto, Fintech, Cryptocurrency Wallets, Legacy Code, Kotlin Multiplatform Mobile (KMM), Video Streaming, Full-stack, Architecture, Back-end, Social Networks Development, Jetpack Compose, Android App Design, Security, Startups, User Flows, A/B Testing
How to Work with Toptal
Toptal matches you directly with global industry experts from our network in hours—not weeks or months.
Share your needs
Choose your talent
Start your risk-free talent trial
Top talent is in high demand.
Start hiring