About me
Welcome to the professional page of Roland Kwolek, a passionate embedded development expert and dedicated Cybersecurity Architect. My journey began with a deep-rooted fascination for electronics, particularly in digital electronics. This passion blossomed into a career in embedded programming, with my first programming experiences in BASIC on an Atari 65XE at the age of 7. Since then, my skill set has expanded, from Pascal and BASIC on Atmel’s AVR (BASCOM) to advanced proficiency in C and C++ for embedded systems.
My professional experience spans a wide spectrum of technologies and systems, from programming tiny 6-pin PIC microcontrollers to managing expansive server farms of 1,500 machines with 24-core configurations. This diverse journey includes mastering assembler on blade clusters in telecommunications and leveraging C++ for 8-bit CPUs with minimal program memory.
In recent years, my role has transitioned into cybersecurity, where I lead the implementation of robust security measures across our products. Key contributions include integrating TLS 1.3 and developing encryption-based functionalities like elliptic curve encryption, signature generation and verification, and certificate chain validation. As a Cybersecurity Architect, I am responsible for overseeing architecture analysis, leading threat modeling and incident response, and defining security tasks for development teams to fortify our systems against evolving threats.
Beyond software, I engage in the design and development of embedded systems, encompassing schematic design, PCB layout, and prototype integration. While I once crafted PCBs myself, my focus has shifted to prioritize security architecture, cybersecurity assessments, and guiding development teams in secure coding practices. Linux is my operating system of choice across all my private machines, where it serves as a robust and flexible platform that complements my professional work in embedded development and cybersecurity.
I am an individual with a relentless drive for excellence and a continuous learning mindset. I thrive on challenges, viewing each as an opportunity for growth and innovation. My cybersecurity skills are evidenced by certifications, including the ISC2 Certified in Cybersecurity (CC), Security Engineer, Jr Penetration Tester, Red Teaming, CompTIA Pentest+, along with specialized training from TryHackMe.
My curiosity extends to understanding the inner workings of technology, an endeavor that fuels my interest in space exploration and the unique challenges it poses to software and hardware design. My career also includes substantial experience in Linux-based systems, from user space applications to kernel space drivers, with a focus on embedded Linux using Buildroot for secure and efficient solutions.
As I continue to grow within cybersecurity and embedded development, I am committed to pushing the boundaries of what’s possible, guided by my unyielding curiosity, dedication to excellence, and the goal of ensuring resilient, future-ready systems.
Skills
Cybersecurity
- Comprehensive understanding of secure software practices.
- Contributed to TLS implementations, notably with wolfSSL.
- Experienced in managing cybersecurity incident response, encompassing threat analysis, containment, and remediation.
- Proficient in conducting comprehensive threat modeling across interconnected subsystems to identify and mitigate potential risks.
- Specialized in defining the cybersecurity aspects of solution architectures to ensure robust protection and compliance.
- Penetration testing.
- Analyzing network traffic with Wireshark.
- Utilizing Metasploit and Burp for exploitation tasks.
- Generating wordlists and cracking passwords with John The Ripper and Hashcat.
- Conducting brute-force attacks with Hydra.
- Skilled in accessing and manipulating the internal interfaces of embedded systems.
Programming languages
- C: Specialized in embedded C, adept at low-level programming including register access and interrupt handling.
- C++: Focused on embedded applications; experienced in using C++ for microcontrollers like EFR32 and STM32. Historical work includes developing software for large server farms.
- Python: Utilized for creating quick scripts to solve problems swiftly, then discarding them. Proficient in the basics.
- Shell Scripting: Skilled in Bash for various configuration and automation scripts, enabling efficiency in workflows.
- Assembler: Employed mainly for debugging purposes, enhancing problem-solving efficiency.
Programming technologies
- Proficient in C++11 standards.
- Utilizes Connan and CMake for efficient build system management.
- Experienced in unit testing with Gtest and GMock.
- Skilled in RTOS and adhering to MISRA-C guidelines for reliable coding practices.
Programming tools
- Version Control: Expert in git, with familiarity in SVN and ClearCase.
- IDEs and Editors: Prefers Visual Studio Code for its extensibility; has extensive experience with Eclipse, noting its performance drawbacks.
- Build and Debugging Tools: Skilled in using GCC, GDB, CMake, Makefile, and debugging tools like J-Link, J-Trace, and Ozone for comprehensive code analysis and performance optimization.
Hardware Design and Troubleshooting
- Design Expertise: Capable of designing complex digital and analog devices, including RF technologies. Utilizes KiCAD for EDA, with prior experience in Eagle and Protel.
- Prototype Development: Hands-on experience in PCB creation and soldering, enhancing understanding of manufacturing constraints.
- Hardware Troubleshooting: Proficient in diagnosing and resolving issues at the intersection of hardware and low-level software.
Certifications
- Certified in Cybersecurity (CC) by ISC2
- Certified Professional for Software Architecture - Foundation Level by iSAQB
- ISO26262
- IEC62304
- Professional Scrum Master certification
General
- Communication: Effective communicator across all levels of team seniority, adept at simplifying complex problems.
- Problem-Solving: Strategic problem solver, breaking down challenges into manageable tasks for efficient resolution.
- Continuous Learning: Actively enhances skills through exploration of new technologies and hands-on application in both professional and hobbyist projects.