Skip to content
View rosmianto's full-sized avatar
๐Ÿ 
Working from home
๐Ÿ 
Working from home
Block or Report

Block or report rosmianto

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Please don't include any personal information such as legal names or email addresses. Maximum 100 characters, markdown supported. This note will be visible to only you.
Report abuse

Contact GitHub support about this userโ€™s behavior. Learn more about reporting abuse.

Report abuse
rosmianto/README.md

Hi there ๐Ÿ‘‹

About Me

Hello, I'm an embedded systems engineer who loves to build robust, highly readable, and maintainable firmware for embedded devices. I've been working on embedded systems for 7+ years now. Also, I've been working remotely for the last 3 years now, and I LOVE IT ๐ŸŒŸ

My Work Experience Timeline Summary

  • 2022-now. Working on a Low-Earth Orbit Satellite system to provide 24/7 IoT connectivity anywhere in the world.
  • 2020-2022. Built tracker device to track heavy machinery such as excavators, and super big trucks. Developed firmware to run the devices 24/7 for years.
  • 2019-2020. Built tracker device for humans. Using Bluetooth technology to track human movement (indoor) and presence.
  • 2018-2019. Built a self-checkout machine for the biggest e-commerce startup in Indonesia.
  • 2016-2018. Built the tiniest smartcard reader that can be attached to Android smartphones.

My Skill Set

  • Firmware Architecture Design. A very important step that many engineers missed. Without proper architecture design, your firmware will be destined to be super-hard to maintain and add features.
  • Firmware Documentation. Without proper documentation, people will waste time to understand and follow your firmware.
  • Firmware Testing. I love and use Test-Driven Development in my day-to-day work.
  • Testing Automation. Usually I use CI/CD to deliver fast and good firmware without breaking existing code.
  • Programming Language. I'm fluent in speaking embedded C and C++ (especially the modern version like C++11, C++17, and C++20). Also able to speak Python and C#.

Technical Skills

  • Wired Protocols
    • SPI
    • I2C
    • UART/USART
    • CXPI (fancy cutting-edge wired protocol for automotive, used by Toyota)
    • CAN bus
    • USB
    • Ethernet
    • I2S (Audio)
  • Wireless Protocols
    • WiFi
    • Bluetooth Classic
    • Bluetooth Low Power (BLE)
    • LoRaWAN
    • NB-IoT
    • GSM/LTE
    • Visible-Light Communication (or VLC, I implemented it for my thesis back in the university)
    • NFC/RFID
  • Network Protocols
    • TCP/IP
    • UDP/IP
  • Security & Integrity
    • CRC32
    • MD5
    • AES
  • Development Board bring-up
  • Embedded Linux (still learning, mainly use Yocto)
  • Embedded library development
  • RTOS
    • FreeRTOS
    • Zephyr
  • Microcontroller
    • ESP32 (dual core MCU + WiFi and Bluetooth)
    • ESP8266 (single core MCU + WiFi from Espressif)
    • STM32 L0, L1, L4, F1 series
    • AVR MCU
    • Texas Instrument CCxxxx series
  • Hardware Development
    • Schematic Design
    • PCB design (still learning! I use KiCad)
    • Board assembly
    • Board testing
    • Power Profiling (to achieve low power, thus extending battery life)
  • Electronic Equipment I Own
    • 4-channel Oscilloscope
    • Nice multimeter
    • Logic Analyzer

How to Contact Me

Pinned

  1. gamebuino-esp32 gamebuino-esp32 Public

    An ESP32 Port for Handheld Game Console Gamebuino

    C 15 3

  2. sim900-MQTT-Library sim900-MQTT-Library Public

    An arduino library for utilizing MQTT Client using SIM900 GPRS GSM Module

    C++ 8 8

  3. hmac-md5 hmac-md5 Public

    HMAC-MD5 implementation for ESP8266 with Arduino IDE

    C++ 2

  4. md5-hw-sha1-benchmark md5-hw-sha1-benchmark Public

    A simple comparison of two hashing algorithms

    C++ 1

  5. Brainfuck-interpreter Brainfuck-interpreter Public

    Brainfuck interpreter written in C

    C