Verified Expert in Engineering
Milos is passionate about Android, and his work experience reflects that. He has built Java applications, creating native C/C++ libraries and Java wrapper classes using JNI and C# .NET using MonoDroid. He has worked as the team lead and developed a modified Android OS for a payment terminal with a high focus on security, including Linux hardening. Milos has also introduced new system apps, services, and Android framework modifications.
Git, Android Studio, Linux, MacOS
The most amazing...
...work I've done was the Android OS development for an unique payment terminal called Aevi Albert.
External Consultant | Firmware Developer
- Provided consultancy regarding development standards, workflow, and processes in order to provide high-quality and maintainable solutions.
- Designed, documented, and implemented platform-specific safe ways to update the bootloader.
- Implemented POSIX filesystem calls for small ARM Embedded platform, including FAT and LittleFS filesystem mounting.
- Prepared Python framework for automatic tests of the firmware using QEMU emulator.
External Consultant | System Developer
- Identified and fixed critical bugs of Android devices (Kernel, Linux binaries, system services), preparing tools and custom builds for monitoring specific issues.
- Cooperated on the development of a new Android device (OS development, architecture, security).
- Consulted regarding Android API, system services, and optimizations.
Head of Mobile Platforms
- Helped prepare an Android device for release by fixing several critical bugs in the Bootloaders, Kernel, Android recovery, and framework.
- Introduced quality standards on coding style, commit style, and workflow.
- Refactored legacy solutions to use Android and Linux standards, improving stability and maintainability.
- Fixed long-term issues of older Android devices. Used Android framework and apps, Kernel drivers, and Native Daemon.
- Closely cooperated on designing a new product for both software and hardware.
- Cooperated with multiple departments and suppliers on software, hardware, manufacturing, and quality control.
- Identified security issues before implementation and designed solution improvements to prevent risks.
- Led a team of five developers working on the system and Android apps.
Developer | Owner | CEO
- Designed and developed J2ME applications according to the client's specifications.
- Consulted companies that were creating Android multimedia applications (using DRM).
- Developed Android apps that implement ad services, Google Analytics, and Play Store In-app billing.
- Developed an Android service running in a separate process for a large bitmap manipulation (preventing memory fragmentation in the app's main process).
- Created an Android library providing extended functionality (new Views and ViewGroups, Drawables, media manipulation, and other tools).
- Gained experience with miscellaneous Android libraries and tools (Android support libraries, third-party libraries, a DDMS/Device Monitor, and MemoryAnalyzer).
- Hired and coached several developers working on Android apps, Cloud services, and website.
- Integrated WebView with optimizations (pre-caching of resources).
- Implemented an advanced filter and search engine.
- Wrote automated UI tests (Espresso and Appium).
- Automated the build process for many build variants.
- Created the architecture for the project and refactored it (MVP pattern).
- Automated UI tests (Appium).
- Integrated communication with the payment terminal.
- Integrated printing using thermal printer.
- Created custom printing library with hi quality bitmap generation.
- Refactored XML layouts and styles for clean, reusable, and maintainable code.
- Implemented synchronization of local database with the server.
Android Team Lead
- Analyzed and refactored code to use the MVP pattern.
- Created reusable views and components using a common app style.
- Added new features, focused on long term stability and maintainability.
- Cleaned up Git branches, specified and applied Git workflow.
- Set up processes for issues tracking, Jira workflow, app versioning, and release planning.
- Wrote documents about project structure, code style, commit style and other standards.
- Set up quality assurance and release processes for Android application.
- Led team of five Android developers, all working remotely.
SW Architect | Team Leader
- Optimized an app UI for better HW acceleration performance.
- Created an Android library for communication with an asynchronous dial-up USB modem connecting to a banking server using an asynchronous dial-up modem.
- Cooperated with an external company providing security features, implemented Linux hardening on an Android 4.0 operating system, modified permissions to fulfill requirements, and gained PCI certification.
- Introduced new system apps and services to maintain security features above the scope of the regular Android operating system.
- Modified an Android framework, specifically the UI and back-end functionality.
- Led a team of seven developers working on the Android operating system.
- Created Windows Mobile applications (C/C++).
- Built a library for communication with Bluetooth headsets (AVRCP).
- Developed Android applications (Java).
- Developed an Android local proxy server for internet radio streaming with the added functionality of reading meta tags (song info) and recording stream simultaneously with playback.
- Worked on a multi-platform project Mobile CRM (Windows Mobile, Windows Phone, Android, iOS) using MonoDroid.
- Constructed native libraries (C/C++) with corresponding Java libraries (using JNI), integrated Java libraries into C# MonoDroid project.
Excel Macro Specialist
- Created Excel macros using Visual Basic for Applications.
- Worked with IBM Lotus Notes.
- Built a connection between MS Excel and IBM Lotus Notus (using Microsoft Component Object Model).
- Created an automated Excel document export with a combined data of more Excel files.
- Developed automated emails with content and recipients generated based on the attached Excel document.
Resco Mobile CRMhttp://www.resco.net/mobilecrm/
Indoor Touch 2.0https://www.2n.cz/en_GB/products/answering-units/2n-indoor-touch-2
C, Java, C++, Kotlin, Embedded C++, Visual Basic, Python, C#, SQL, XML
Android SDK, JNI, .NET, Appium, Dagger, Dagger 2, GStreamer
Android API, Fabric, FFmpeg
Git, Jira, Android Studio, Android NDK, Microsoft Excel, Confluence, Gerrit, Jenkins, GitLab, GitLab CI/CD, U-Boot, TeamCity, Subversion (SVN), Eclipse Memory Analyzer, MonoDevelop, TFS, Eclipse IDE
Android, Linux, J2ME, NetBeans, Android TV, MacOS
Low-level Programming, Embedded Development, Software Design, Embedded Systems, MonoDroid, Amplitude, Linux Kernel, Linux Kernel Drivers, Espresso, ARM Embedded, FreeRTOS, Bootloaders, OkHttp, Digital Rights Management (DRM), Bluetooth, AOSP
Model View Viewmodel (MVVM), Model View Presenter (MVP), Scrum, Agile Software Development