Home LinkedIn Resume

Marcin Rutkowski

Name pronounciation guide: [YouTube], [Google]

Experienced Software Engineer

Areas of expertise: robotics, computer vision, automation, industrial design.

Projects accomplished:

Computer Vision: VisionIQ news 1   VisionIQ news 2

Aerospace: VBAT UAV

Robotics: [Stealth mode]

Industrial Automation: Stim Commander, Valve Commander

Academic contributions: Satellite Image Processing, Wireless Sensors

This is me holding a large tea cup described with 14 lidar channels. Cheers!
This is me holding a large tea cup described with 14 lidar channels. Cheers!

This is me holding a large tea cup described with 14 lidar channels. Cheers!

Experience

Technical skills: C++, Python, C#, OpenCV, CUDA, Numpy, ROS, Neural Networks Inference, Linux (Debian/Ubuntu/L4T/custom kernels), NI LabVIEW
Sensors and hardware: Visual spectrum cameras, LiDAR (Velodyne, Ouster), Ultrasonics, IMUs, Nvidia Jetson AGX NX Xavier TX2, High performance SoCs

Robotics and Computer Vision:
- image processing: custom filter kernels, noise removal, feature highlighting, geometric, morphological and arithmetic transforms, equalization, thresholding, edge detection
- adapting non visual signals to image representations to utilize image processing algorithms
- image based localization: efficient homography, custom localization algorithms, image comparisons
-  machine/deep learning (inference): custom clustering, multi-person pose estimation, tracking, hardware acceleration (TensorCores)
- sensors (usage, evaluation, sourcing, selection): visual spectrum cameras, LiDAR, ultrasonic ranging, accelerometers, gyroscopes, motors
- designing autonomic operations systems for high uncertainty environments (sparse ground truth)

Code Foundations:
- creating and maintaining CICD pipelines
- designing testing requirements
- applying code style and guidelines to the code base
- generating custom linters

Architecture:
- latency optimized systems
- lean architectures for robustness and determinism
- power limited device architectures
- custom robotics architectures
- high, continuous uptime devices
- critical control module design, fail-safe design
- multi-device systems with and without a central unit

Embedded:
- building solutions using the STM32 ecosystem
- writing firmware for low level electronics: FRAM, EEPROM, IO Expanders, ETH controllers, etc.
- designing deterministic architectures for microcontrollers
- creating lean custom Linux kernels
- optimizing systems for robustness, stability
- optimizing OS kernel and CPU for meeting hard timing deadlines
- writing custom implementations of industrial protocols (MODBUS, EtherCAT)

Test and Evaluation:
- building performance and benchmarking infrastructure
- designing integration testing
- describing product/device performance limitations through benchmarks, test
- designing software-in-the-loop and hardware-in-the-loop test setups, multi-device simulators

Project Management:
- managing team deliverables, developing project timelines
- utilizing project and issue tracking software
- training stakeholders and developers in the correct usage of project and issue tracking software
- resource allocation and utilization
- communicating cost projections and effort estimates
- stakeholder and client communication
- vendor management: electronics sourcing, sourcing custom components
- identifying and delegating tasks for temporary remote contractors
- implementing cloud collaboration and document management solutions

Startup related:
- building high performance teams
- mentoring junior developers in code practices, testing fundamentals and stakeholder communication
- evaluating and demonstrating hiring needs using project management software
- implementing adequate hiring systems for applicant tracking
- designing hiring process: job listings, candidate screening, interviewing methods and goals
- evaluating candidates incl. non traditional backgrounds

Have a nice day! :)