mohitmishra786/low-level-dev-skills

DirSkills catalogs 25 skills from this repository, across 5 categories: AI Engineering, Automation, DevOps, Quality, Writing.

194 stars27 forksView on GitHub
48m ago

ADC And DAC Bare Metal

ADC And DAC Bare Metal configures ADC sampling, calibration, DMA circular buffers, and DAC output on microcontrollers. Use it for reading analog sensors, continuous sampling, or generating analog voltages.
DevOps
19427
🖧
48m ago

AF XDP

AF XDP guides setup of userspace packet I/O with UMEM, XSK rings, and XDP_REDIRECT programs. Use it when building fast network datapaths, choosing copy versus zero-copy mode, or comparing AF XDP with DPDK.
DevOps
19427
⚙️
48m ago

Bare-Metal Startup

Bare-Metal Startup guides reset-to-main bring-up for embedded targets. Use it for vector tables, .data/.bss initialization, stack setup, VTOR relocation, and crt0 startup code on Cortex-M or RISC-V.
DevOps
19427
🛠️
48m ago

Bazel

Bazel guides C/C++ build setup with BUILD files, cc_library and cc_binary rules, Bzlmod dependencies, toolchains, queries, remote execution, and sandbox debugging. Use it when creating or troubleshooting Bazel builds.
DevOps
19427
⚙️
48m ago

Build Acceleration

Build Acceleration helps reduce C/C++ compile and link times using ccache, sccache, distcc, unity builds, precompiled headers, split DWARF, and IWYU. Use it when builds are slow or you need to find the main bottleneck.
DevOps
19427
🧠
48m ago

Custom Allocators

Custom Allocators guides allocator design and tuning for pool, slab, arena, and general-purpose memory management. Use it when implementing custom allocators, adjusting jemalloc or mimalloc, or benchmarking fragmentation and throughput.
DevOps
19427
🔁
48m ago

DMA Bare Metal

DMA Bare Metal configures DMA channels and streams for memory-to-peripheral or peripheral-to-memory transfers. Use it for circular buffers, double buffering, transfer-complete interrupts, and Cortex-M cache coherency issues.
DevOps
19427
🕸️
48m ago

DPDK

DPDK guides userspace packet I/O setup for EAL initialization, PMD configuration, mbuf pools, rte_ring queues, huge pages, RSS, and testpmd validation. Use it when building or testing high-throughput packet processing with DPDK.
DevOps
19427
📘
48m ago

Datasheet and Reference Manual Reading

Datasheet and Reference Manual Reading teaches a systematic way to extract pinouts, register maps, clock trees, timing, and errata from MCU documentation. Use it when locating information in an STM32 RM or checking electrical and reset behavior before firmware work.
Writing
19427
🔗
48m ago

Dynamic Linking

Dynamic Linking guides Linux ELF shared-library debugging and configuration. Use it for RPATH versus RUNPATH, soname versioning, dlopen/dlsym plugin loading, LD_PRELOAD interposition, and symbol visibility issues.
DevOps
19427
🔍
48m ago

Elf Inspection

Elf Inspection guides inspection of Linux ELF executables and shared libraries with tools like readelf, objdump, nm, and ldd. Use it to check symbols, sections, dependencies, debug info, build IDs, relocations, and linker or runtime symbol errors.
Quality
19427
🔧
48m ago

Embedded Bootloaders

Embedded Bootloaders guides vector table relocation, valid image checks, and safe jump-to-application flow on Cortex-M MCUs. Use it for custom bootloaders, DFU updates, or apps that run from a non-zero flash address.
DevOps
19427
🛠️
48m ago

GNU Binutils

GNU Binutils guides binary manipulation with tools like ar, strip, objcopy, addr2line, strings, and c++filt. Use it for static libraries, debug-file handling, address-to-source lookup, and symbol demangling.
DevOps
19427
🔌
48m ago

GPIO Bare-Metal

GPIO Bare-Metal configures MCU GPIO without HAL for input/output modes, alternate functions, pull resistors, and pin-change interrupts. Use it for LED, button, and peripheral pin setup on STM32, nRF52, or ESP32-class boards.
AI Engineering
19427
48m ago

Interrupts And Exceptions

Interrupts And Exceptions guides bare-metal Cortex-M interrupt setup, ISR rules, and fault handling. Use it for NVIC priorities, HardFault debugging, critical sections, and interrupt latency tuning.
DevOps
19427
⚙️
48m ago

Io Uring

Io Uring guides agents through Linux io_uring, including SQE/CQE usage, liburing, multi-shot accept/recv, provided buffers, fixed files, and zero-copy send. Use it when building high-throughput Linux services or comparing io_uring with epoll.
DevOps
19427
🔗
48m ago

Linkers and LTO

Linkers and LTO helps configure GNU ld, gold, or lld, diagnose link-order and undefined-symbol errors, and enable LTO safely in real builds. Use it when tuning linker flags, dead-code stripping, or symbol visibility.
DevOps
19427
🔋
48m ago

Low-Power Embedded

Low-Power Embedded guides MCU sleep, stop, and standby setup, plus clock gating and wake-up source configuration. Use it when reducing firmware current draw or debugging wake-from-sleep behavior.
DevOps
19427
🔧
48m ago

MMIO and Bit Manipulation

MMIO and Bit Manipulation guides safe memory-mapped I/O for bare-metal firmware. Use it when reading or writing hardware registers with volatile access, masks, read-modify-write patterns, alignment, or endianness concerns.
AI Engineering
19427
🧠
48m ago

NUMA Programming

NUMA Programming guides process and memory placement on multi-socket systems. Use it to detect topology, bind workloads with numactl, call libnuma, and measure remote memory access costs.
DevOps
19427
🧭
48m ago

Peripherals From Datasheet

Peripherals From Datasheet guides writing MCU peripheral drivers from reference manuals by reading register maps, init sequences, and timing notes. Use it when porting or debugging register-level drivers without a vendor HAL.
AI Engineering
19427
🔌
48m ago

SPI and I2C Bare Metal

SPI and I2C Bare Metal shows how to implement master-mode SPI and I2C transactions without a HAL. Use it for sensor register reads, flash/display bring-up, and debugging NACKs, CPOL/CPHA mismatches, or stuck bus lines.
Automation
19427
🔧
48m ago

STM32 Bare-Metal

STM32 Bare-Metal guides CMSIS-only STM32 firmware bring-up without HAL, including clock setup, peripheral register access, and linker/build configuration. Use it when scaffolding minimal STM32 projects or debugging low-level startup issues.
DevOps
19427
⏱️
48m ago

Timers And Pwm

Timers And Pwm configures bare-metal MCU timers for PWM output, input capture, and periodic ticks without an RTOS. Use it when setting prescalers, ARR/CCR values, or SysTick for simple scheduling.
DevOps
19427
🔌
48m ago

UART Serial Bare-Metal

UART Serial Bare-Metal covers baud rate setup, polling or interrupt-driven TX/RX, and basic DMA use for UART/USART on bare-metal systems. Use it for serial console output, sensor links, or fixing garbled debug text.
Automation
19427