Principal Software Engineer (Windows Kernel, Windows Drivers, C++) @
I am a Windows/Linux Kernel developer with almost 10 years of overall kernel/drivers development experience. I have a deep understanding of Windows OS internals, undocumented data structures and system architecture. I have developed both Windows and Linux block filter drivers and file system filter drivers. I've done a lot of programming, debugging and reverse engineering on x86,
I am a Windows/Linux Kernel developer with almost 10 years of overall kernel/drivers development experience. I have a deep understanding of Windows OS internals, undocumented data structures and system architecture. I have developed both Windows and Linux block filter drivers and file system filter drivers. I've done a lot of programming, debugging and reverse engineering on x86, x64 and ARM platforms. I've been in the field of Windows system level engineering since XP, doing event filtering, API hooking and device driver programming and I've joined the Linux device driver development community about two years ago. I also have a great interest in "newer" technologies and frameworks like Node.js, Express and Android app programming.
Virtualization Software Engineer @ Optimization and virtualization of the storage stack to allow integration with cloud
technologies: Azure, AWS, etc. From October 2015 to Present (3 months) Senior Systems Software Engineer @ Linux/Android kernel programming: Design, development, optimization and debugging of significant parts in a block level filter driver which allows performance gains during file system I/O. Write-back and read-ahead cache implementation and core algorithm design.
Windows kernel programming: Design, development, optimization and debugging of multiple windows kernel modules which are responsible for supplying a unified modular write-back and read-ahead cache solution at various levels of file system stack. Design of algorithms for the aforesaid modules. Optimization of old code, code maintenance and porting to new platforms (Windows Server family). From December 2013 to September 2015 (1 year 10 months) Senior Systems Software Engineer @ Design, development and debugging of various parts in the Windows kernel driver compliant with WDDM (Windows Display Driver Model) and in particular:
1. GPU virtual memory implementation - maintaining and optimizing the in-memory structures and code necessary for GPU memory virtualization and segmentation.
2. Reorganizing and rewriting parts of the paging code which is responsible for paging in/out the video memory into the system memory and vice versa.
3. Performance tuning for making the driver compliant with WHQL requirements introduced by Microsoft. Reducing and reorganizing code and in-memory data structures, analyzing different code-paths for discovering spots that reduce the driver's performance or unnecessarily bloat the code size.
4. Lead role in the UVM (Unified Virtual Memory) project on behalf of the team. Implementation and debugging of the code responsible for WDDM-CUDA interaction. From October 2011 to November 2013 (2 years 2 months) Senior Windows Kernel Programmer @ Windows Network driver (TDI, NDIS, WFP) development and debugging, crash dump analysis, reverse engineering of the Windows OS code. The driver provided security and firewall capabilities based on the policies received from a user-mode service. From January 2011 to September 2011 (9 months) IsraelWindows Kernel Programmer @ Design and implementation of Windows file system mini-filter driver which combined API (SSDT) hooking (Windows XP) and advanced filtering logic (Vista, Win7 32bit and 64 bit) based on user-mode service policies. Implementation of NDIS filter driver (protocol combined with mini-port) for monitoring and filtering low level network traffic. Implementation of a mechanism which allowed the two drivers to communicate and to share data. Redesign and re-implementation of a user-mode service application (C/C++) for managing the aforementioned drivers. From January 2009 to December 2010 (2 years) IsraelWindows Kernel Programmer @ Design and development of Windows file system mini-filter driver. The driver provided virtualization for the file system (NTFS), the registry and process/thread creation mechanisms. The implementation included SSDT hooking of I/O calls and kernel-mode/user-mode data sharing and synchronization. From 2007 to 2009 (2 years) IsraelWindows Kernel Programmer @ Participation in two different projects:
1. Development of File System Mini-Filter driver responsible for monitoring OS events.
2. Development of a USB driver for a WiFi card. From 2006 to 2007 (1 year) IsraelQA Engineer @ Testing SIP stack implementation. From 2003 to 2006 (3 years)
B.A., Computer Science @ The Open University of Israel From 2004 to 2008 Dmitry Geskin is skilled in: Device Drivers, Debugging, Kernel, C, Operating Systems, System Architecture, Linux, C++, ARM, Linux Kernel, File Systems, Multithreading, USB, TCP/IP, Programming
Looking for a different
Get an email address for anyone on LinkedIn with the ContactOut Chrome extension