
Dmitry Soshnikov
English
Average star rating
Programs
Reviews
Who Is Dmitry Soshnikov?
Dmitry Soshnikov is a deeply passionate computer scientist, software engineer, and technical educator who specializes in demystifying the internal workings of programming languages, compilers, virtual machines, and runtime systems. Known for his hands-on, practical approach to complex theoretical topics, Dmitry has helped thousands of developers transition from simply writing high-level code to understanding exactly how that code is parsed, compiled, optimized, and executed at the machine level. His pedagogical philosophy centers on learning by building, which is why his curriculum avoids dry, academic lectures in favor of step-by-step construction of functional software tools. Through his structured guides, active coding sessions,…
Dmitry Soshnikov's Programs
Highest ratedBuilding a Virtual Machine for Programming Language
No verified reviews yet, be the first to review
Demystify what happens under the hood of modern runtimes with this comprehensive guide to low-level systems programming. Led by industry expert Dmitry Soshnikov, this course bridges the gap between high-level code and machine execution by guiding you through the creation of a fully functional virtual machine (VM). Designed for intermediate developers, compiler enthusiasts, and curious software engineers, the curriculum covers vital architectural decisions, including stack-based versus register-based VM designs. You will dive deep into compiler construction, bytecode interpreters, and structural elements like call stacks and stack frames. The course does not shy away from advanced memory management either; you will implement sophisticated features such as Garbage Collection, specifically utilizing the Mark-Sweep algorithm. Additionally, you will learn how programming paradigms like Object-Oriented Programming (OOP) and Functional Programming (including closures) are represented and executed at the bytecode level. By building these systems from scratch, you will cultivate a profound understanding of language runtimes, memory layout, and runtime optimization, empowering you to write significantly cleaner and more performant code.
Top #2Building an Interpreter from scratch
No verified reviews yet, be the first to review
Demystifying how programming languages work under the hood is a rite of passage for any serious software engineer. Dmitry Soshnikov’s 'Building an Interpreter from scratch' provides a clear, hands-on architectural journey into language semantics. Instead of just learning how to use a language, students construct their own custom execution engine. The course systematically breaks down complex compiler theory, starting from AST-interpreters and progressing to high-performance stack-based Virtual Machines and bytecode execution. This practical curriculum bridges the gap between high-level code and low-level execution mechanics, explaining concepts like JIT compilation, transpilation, and the role of LLVM. Developers will explore how closures, lexical scoping, and call-stacks function at the machine level, alongside implementing object-oriented concepts such as classes and prototype inheritance. Perfect for intermediate programmers, systems architects, and tools developers, this course empowers you to design robust runtime environments and write significantly optimized code. By the end, the underlying machinery of engines like V8 or JVM will no longer feel like a black box.
Top #3Programming Language with LLVM
No verified reviews yet, be the first to review
Delve deep into the world of compiler engineering with this practical course on building your own programming language using the LLVM compiler infrastructure. Led by industry expert Dmitry Soshnikov, this program bridges the gap between theoretical language design and practical, system-level execution. You will shift from building basic interpreters to generating highly optimized machine code. The course guides you step-by-step through the process of constructing a custom LLVM frontend, compiling complex object-oriented features such as classes and inheritance, and implementing advanced functional programming patterns like lambda functions and lexical closures. Additionally, you will master branch instructions, conditional control flow, and automated machine code generation. Designed for intermediate programmers, systems engineers, and language design hobbyists, this comprehensive training provides the hands-on skills needed to navigate the complex LLVM framework confidently. By the end of this course, you will have a thorough working knowledge of modern compiler backends, enabling you to translate abstract syntax trees into high-performance executable programs optimized for modern hardware architectures.
Is Dmitry Soshnikov Legit?
Run a Free Dmitry Soshnikov Credibility Check with AllPros Guru Detector
AllPros’ Guru Detector analyzes verified student reviews, checks for authenticity patterns, and gives a clear A–F trust grade, based purely on real student outcomes. No paid testimonials!
Not sure about another creator? Run a free check at AllPros Guru Detector before you spend a dollar.
FAQ
Dmitry believes in learning by building from the ground up. Instead of just studying abstract syntax trees or virtual machine specifications on paper, students write real, working code from scratch to ensure theoretical concepts become concrete skills.