Technical Knowledge
- Knowledgeable with AOSP (Android 9, 10, 11, 12), Android porting, AIDL, HIDL, native Android application/service development and Android security concepts (TLS, HDCP, ARM TrustZone, SELinux).
- Knowledgeable with modular Linux OS/BSP platform development and porting using Yocto Project and several build systems (e.g. BitBake, GNU Make, CMake, qmake).
- Knowledgeable with Linux driver development. Previously have written drivers for e.g. Continental ARS-308 RADAR, Hirschmann Car Communication FM/AM Radio Tuner, FPGA communication in commercial products. An example open source driver is given: TEA5767 FM Radio Tuner Module.
- Experienced with Linux driver porting using devicetrees.
- Excellent with several programming languages: C, C++, Bash, Python. Also knows MATLAB, VHDL, Java.
- Application experience regarding multimedia, computer vision, and robotics in Linux using Qt 5 and Qt 6, GNU/Linux ecosystem (bluez, pulseaudio, ofono, network daemons, systemd, SystemV, and many more), OpenCV, and ROS.
- Application development experience on Android platforms using Java (Car library, Car framework)
- Able to model, describe and simulate robots, other systems, control systems and simulations (Robot Operating System, Gazebo, SDF, MATLAB, Simulink, Simscape)
- Familiar with low-level real-time embedded system development targeting XMOS, STM32, TDA2x SoCs and CPUs using SYS BIOS and FreeRTOS.
- Familiar with describing hardware on FPGAs using VHDL.
- Knowledgeable with unit testing using C++ and GTest/GMock framework.
- Knowledgeable with 2-layer PCB design and realization (Altium Designer, KiCad).
- Knowledgeable using hardware test instruments (Oscilloscope, Logic Analyzer, PulseView).
- Able to work with 2D graphics and 3D modeling (Qt 3D Studio, Google SketchUp, Adobe Fireworks).
- Knowledgeable with software architecture design and modeling (SysML, UML, Enterprise Architect).
- Knowledgeable with project management workflows ASPICE, V-Model and Agile.
- Knowledgeable with project management tools Polarion, Jira, Confluence, Redmine, Gerrit/Git, Travis.
- Knowledgeable with documentation using LaTeX, Sphinx, Doxygen, MS Office.
- Hands-on platform porting and/or application development experience with industry-compliant well known SBCs and SoCs. Couple of examples are as follows:
- NXP i.MX 8 QuadMax Multisensory Enablement Kit
- TI DRA7xx EVM (Jacinto 6) ES 1.0
- Qualcomm Snapdragon 8150 based custom boards (msmnile_au, sm8150)
- Qualcomm Snapdragon 820 based custom boards (msm8996)
- Qualcomm S820Am v2 Automotive Development Platform
- ASUS Tinker Board 2 (rk3399, AOSP)
- Nvidia Jetson Xavier NX / Jetson Nano
- All Raspberry Pi variants
- RT-RK Alpha Board (3x TDA2x 10-core SoC)
- XMOS xCORE-200 eXplorerKIT 16-core MCU Board
- STM32F4 Discovery Board
- ESP8266-based platforms
- Hands-on experience with a couple of FPGAs:
- Embedded development on several operating systems:
- Yocto Project based Custom Linux (mainly)
- Linux Kernel (mainly)
- Android Open Source Project (mainly)
- FreeRTOS
Lab Equipment
I do own a small electronics lab at which I use following equipment for my digital electronics and embedded system experiments. I wanted to share my equipment since any nerd like me would love to share this kind of information: