Principal Swe Resume
Santa Clara, CA
OBJECTIVE:
Provide system programming expertise involving real - time applications and device driver/firmware development in the area of big data platforms (structured and unstructured), mass storage systems, Confidential, security, Confidential, and databases.
SUMMARY:
I do full cycle design and development (C/C++) using a set of criteria which delivers robust software. Many of my products have been in the marketplace for over a decade with mere days of maintenance. The work is in Confidential applications and device drivers for Windows, Linux (Android), and embedded systems which exploit the enterprise market. The program area is big data, file systems, Confidential, Confidential, and security.
SKILLS:
OS: .NET MVVM Applications; XAML programming; QT UI; Windows 10; Thin Client, Thin OS; Intel Data Plane DK; Intel Data Plane DK for Storage; Windows 8 (32,64); Windows 7 (32,64); Bluetooth ATT/GATT protocol drivers; ThreadX; Metaware Board Bringup Software; Linux 2.26.XX; Windows Server 2008, Windows LHV, Windows XP, XP 64bit, Embedded XP, Server 2003, Server bit, Server 2003 R2, 2K, Vista, NT, 9X; Linux; QNX; VRTX; VxWorks; .NET; Microsoft Vista; MPI; Excel VBA; NSK Infinitely Scalable Database OS; HBase; Thin Client OS; PulseAudio
DATABASE: PostgreSQL, Postgre SQL Write Ahead Log (WAL) xlog records; PostgreSQL XL, MS SQL 2008, MS SQL 2005, Vistadb, db4o, ADO, ADO.NET, MSDE, Active Directory (LDAP), SQL Express, Hadoop, NoSQL, MySQL, SQL/MX, SQL/MP, ACID, HBase, MapReduce, Hadoop
LANGUAGES: Python; ARM(MX27,MX37); XML; C#, C/C++; x86 Assembler w/protected mode include call gates, PTE, IDT, GDT, LDT insertions; Java; 8051; Verilog; VHDL; Assembler; ARM; SHX; Visual Basic, UML, MPI, CLR, VB Script, WMI Objects; Perl; YAML
PROTOCOLS: Mesh Networks (802.15.4, OpenThread); Windows CDC MBIM; MBIM AT commands; USB serial device; USB emulated device; Windows Registry Access Protocol; Rohde Schwarz CMW 500 testing protocol; Rohde Schwarz Appliance testing protocol; PostgreSQL WAL protocol; PKCS#11 Cryptoki; CAN network protocol, 1553 network protocol; unionfs;RDMA, S, Infiniband; iSCSI; WPF (tablet); gesture recognition i/f; RDP; JTAG IF to 2763; KMDF-UMDF; KMDF USB API; USB Jungo Device API; Java download protocol (JNLP); PCIe Configuration; HTX; USB bulk, isochronous, control; 802.11; Wireless Security(WEP, WPA, RSN); Wireless Access Control(802.1x, EAP, RADIUS); Wireless Encryption (TKIP, AES-CCMP); CIFS; NDMP; TDI; KS Streaming in Windows; AVStream in Windows; Windows Sockets; IpSec; Routing protocols; Internet Core Protocols; HTTP protocols; Web Cache Control Protocol (WCCP); Internet Cache Protocol (ICP); 802.11; Remote NDIS; NDIS; USB Communication Class specification; SCSI RAID; ODBC; VCOMM; ATM 4.0 Traffic Management; HP Open View Programming; SNMP programming; Protocol Analyzing; MPEG, ATM 4.0 Traffic Management; AAL5 layers; AAL0 layers; TCP/IP Administration; Microsoft Telephony API; ISDN; Intel RTIC debugger; bisynch protocol implementation; Netbios; SNA; PC LAN program SMB block analysis; LU0 and LU2 Interface; Gould Modbus Protocol
APIS: Win32, Cryptography API Next Generation (CNG); Win32 Crypto API (CryptoAPI); OpenThread, udecx, usbser, Windows Power Management Events; Windows PnP Events; Windows WPP and ETL; Windows autologging; PostgreSQL pg lib xxx; PKSI Cryptoki; SELinux Policy Module; Linux pcan API, RWTAB scripting;unionfs; Linux (Android) netifxxx(), DDS (Data Distribution Service), AMQP (Advanced Message Queuing Protocol), RabbitMQ, OpenSplice, wlxxx(), Infiniband Verbs; Windows Encrypting File System (EFS); Windows Filtering Platform (WFP); Windows File System Mini-Filters; Direct X 10.0; Windows Presentation Foundation Asynchronous programming; Windows Desktop Virtualization; Performance Counters; ETW; USB Video Class (Dynamic Frame Intervals); USB Mass Storage Class; (KMDF-UMDF; KMDF USB API; USB Jungo Device API ; QT (Linux Window Framework); DPDK; Xen; GDM (gnome display manager), Intel ATOM Stepping I/F, Linux Multimedia Device Interfaces /dev/video0, /dev/dvb/adapter0/ frontend0,gstreamer, HPK; Microsoft Filter Manager Communication API both user mode and kernel mode; Linux Interdriver Media Player for MX37; Javaws; JNLP; BDA in Windows Stream Request Blocks; PCIe Configuration for Root Complex and Bridges; PCIe Configuration for Message Signaled Interrupts (MSI); HTX device DMA Configuration; I/O APIC Configuration; H APIC Configruation; Windows DVB interfaces; AMD64 NUMA instructions(write-combining interfaces, MTRR, PAT, clflush, hop calculation); Linux HTX device driver; Linux PCI probe routines; Linux kernel mode API; Linux pthread API; Volume Shadow Services (VSS); Windows Kernel Mode Filter Manager; Windows IFS CC Routines; Data Modification Kit from OSR; Windows Security API (SACL, DACL); Windbg KD extensions; KMDF; UMDF; KMDF (bus driver); Microsoft Vista Wireless API (WLAN); Intel Muroc Wireless API; IMAPI 1.0/2.0; MMC (all versions); VDS; MS MPIO; TDI; NTFS; CcXXX Monolithic Cache Routines; PCAP Matching Syntax; NDIS; IFSDK; SSL; NTFS; CDFS; Windows ME/NT/2K/XP/WDM Device Drivers; NT Installable File Systems; Win32; WHQL Administration; USB 1.1 and 2.0 specification; WinDriver from Jungo; DirectX (DirectShow), Linux kernel driver, MSVC, Remote NDIS specification, USB Communication Class specification, Rational Rose, ACPI Hot Swap Calls, Compact PCI, MS PnP Architecture, Setupapi.dll usage, JAVA, COM, DCOM, ActiveX, ATL, CIFS, DACL, SACL, Microsoft Visual Studio, Microsoft Visual Modeler, ODBC, Direct Draw Architecture, Cygnus GNUPro, Driver Works; VToolsD,, TLI, VCOMM,, OLE; 80386 Call Gate Creation; 80386 protected mode programming; MFC Persistent object serialization; UNIX Kernel Debugger; UNIX Device Driver Development; UNIX Application Development; UNIX Signal Handling; UNIX Streams Module Development. UNIX Socket Development; UDP/IP Kernel Programming, In Circuit Emulators, WMI Objects, CIM Objects, VDS, GNU ARM Toolchain (GCC, GDB, uClibc/Newlib, ARM Assembler), jemalloc, dlmalloc, Hoards, gstreamer sets (base, good, bad, ugly) ffmpeg, gstreamer editor (gst-editor), xine, Totem, mplayer, VLC, Kaffeine, Containers for mpeg2, mp3, dvix, avi, mkv
TOOLS: postgreSQL pgbench, psql, created; buildroot, Yocto, LTTng, nm connection editor, Gnome Network Manager, IoZone, IoMeter, netbench, SpecFS, Wireshark, Ethereal, AirPcap, LibPcap, Rational Rhapsody UML, Microfocus UML; Python tools;
ALGORITHMS: BigO(key length constant ) searching; Finite State Machines; Self Balancing Binary Search Trees; Splay Trees; Normalization Front End; stable task sets; multithreading/parallelization (pipelining thread model; pier thread model; pier-pool thread model);
WORK EXPERIENCE:
Principal SWE
Confidential, Santa Clara, CA
Responsibilities:
- Ultimate impact on Recovery Point Objective (RPO) was 100X increase in efficiency, and for Recovery Time Objective (RTO) was 4X increase in efficiency. Added multithreading/concurrency with pipelined thread model.
- Designed WMI CIM interface to an XML defined kernel mode and user mode ETW provider. Set up schema for the CIM.
- Designed modifications to SQL/MS distributed transaction system to reduce resource consumption and implement a more uniformly distributed transaction system.
- Developed real-time embedded database for medical device using Vistadb, and MS SQL 2005
- Analyze distributed SQL engine for performance bottlenecks and develop POC prototypes. Analyze MPI SQL interface for performance bottlenecks and develop POC prototypes. Develop UML processes for prototypes and delivery. Design for eventual port to Hadoop
- Design port of database file system to HBase
- Modularize SQL language compiler to accept unstructured data search queries in Autonomy, MapReduce, and raw bloom filters.
- Design prototype interface for hardware accelerated bloom filters.
- Designed NVMe implementation with diagnostic front-end and designed and developed POC prototype.
- Developed rsync and rdiff debugging mechanisms for WAN and LAN environments.
- Developed mechanism to debug a backup mechanism which comingled rsync, rdiff, and VSS.
- Developed architecture to reduce resource usage for a MPI based distributed SQL transaction mechanism.
- Developed mini-filter to investigate activity at different frames and altitudes
- Developed volume hook to expose EFS ciphered data Designed and developed a minifilter and user mode MS SQL 2008 interface for doing real-time file name queries.
- Designed and developed kernel mode interface to Hypertransport 1.3 coprocessor for zero copy encryption algorithm for forwarding to filesystems.
- This driver was x-platform between Linux and Windows, drawing on similarities in interrupts, high IRQL DPCs and tasklets, low IRQL DPCs and work queues, and between the kiocb and IRP. Implemented DMA option for same.
- Designed and developed algorithms for front end to normalize search nodes across elite resources.
- Designed and developed initial prototype for NTFS compression system using the DMK from OSR, using volume level filters, and using hooks into the native NTFS compression system. Integrate compression systems into Microsoft’s DPM server using VSS APIs. Analyze impact of software on Hyper-V.
- Microsoft Shadow Copy service interface.
- Designed IMAPI v 2.0 encryption which was done transparently at hook time and explicitly by and application.
- Designed and developed hot plug disk management system for a 48 drive server using device manager APIs, VDS APIs, WMI APIs, and CIM APIs. Involved integrating into BMC or enterprise boards using IPMI.
- Required cross platform considerations between VDS and Logical Volume Manager (LVM);Designed include extensible threading model, and full integration into the Windows management paradigm.
- Identified performance problems in medical device with file system and video streaming problems. Provided fix for same by modification of the .NET CLR threading pool.
- Designed improvement to video file system streaming appliance.
- Designed and developed staged architecture for a distributed terabyte filesystem cache which involved using user mode and kernel mode Linux system knowledge and programming skills.
- Specifically, this required architecting a new Linux RPC mechanism which was asynchronous.
- Additionally, it required interfacing NFC routines into this asynchronous paradigm. Analyzed CIFS storage system device driver suite with file system filters for optimization issues.
- Debug crash dumps. Developed volume level capture driver with zero copy distribution as a function of NDMP controls, TDI redirection, and NDIS hooks
- Developed proprietary MPIO system Analyzed viability of using MS StorPort architecture for FC and iSCSI interface.
- Designed and developed several file system filter interface devices. Designed high speed shared memory access to file system filters.
- Generated performance analysis of OS/2 internals: concentrated on file systems such as FAT, HPFS, and CDFS.
- Developed utilities in C++ for OS/2 PM.
- These utilities helped program analysis. Provided maintenance programming services for file system department.
- Designed interface between HPFS IFS and SCSI LADDER device driver.
- This involved adding entries to page tables and other sophisticated memory management programming.
- Developed OS/2 PM Utilities.
- Analyzed kernel mode portion of an internet project.
- Developed WinNT PDH prototypes in ActiveX, file system prototype, pseudo file system in kernel mode and JAVA interfacing libraries.
- Worked on design for distributed file system cache i/f for CIFS and SCSI RAID drivers.
- Developed COM proposal and prototypes for ActiveX presentation of e-commerce library.
Confidential
.NET DeveloperResponsibilities:
- Design approached infinite scalability on InfiniBand, and was cross platform to WAN hardware and protocols.
- Used to move iSER packets between RDME networks and NVMe backend.
- Design and develop tools to trace network activity through VNDX interfaces through VMs.Initialized with
- Designed trace system using ETW to reveal kernel details associated RDP protocol.
- Designed and developed a remote USB extension for thin clients.
- Designed and developed prototype to optimize x-platform fail over activity in an MPI environment. Integrated system into a virtualization environment.
- Designed and developed offload protocol stack with TDI upper edge and NDIS lower edge. Developed encapsulation modules to support iSCSI, RDMA, and DDP. Designed port to Microsoft Vista TCP/IP Chimney stack.
- Designed Web monitor system for optimal performance on SMP machines. Designed PCAP replacement for high speed monitor. Created user mode - kernel mode interface using custom designed spin locks. Redesigned massively threaded system to reduce thread count to a function of processor number and asynchronous device number.
- Ported NDIS intermediate driver from NT to 2K which included port of Web Cache Control Protocol (WCCP) and Internet Cache Protocol (ICP).
- Developed Windows and Linux driver for video Confidential . Developed WinNT distributed digital logic analyzer with pico second resolution that dynamically monitors video Confidential system.
- Researched software development of a remote NDIS driver, which required source code compatible with WinCE. Calculated performance allowance for IPSec.
- Developed software for control of FORE ATM Switch through MIB variables. Developed add-ons for HP Open View for Windows. Did site surveys by protocol logging.
- Developed software architecture for ATM chip set. The architecture accommodated AAL5, AAL0, and some ATM 4.0 traffic management. The ATM chip set also supported cluster computing.
- Designed and developed the network VM module for the Merge program (now Win4Lin). Used call gates to exception into ring 2 for aliasing, used import address table hook for interrupt injection, and memory mapping tables for address space compression and Dom0.
Confidential
.NET DeveloperResponsibilities:
- Designed CDC MBIM driver using IOSM device API, designed RIL for network registration, maintained versions of same, including PCIe endpoint driver
- Designed and developed POC prototype for Broadcom BCM .11 ac chip.
- Designed and developed optimized Linux wireless adapter installation program. This involved setting up Network Manager policy and guidelines.
- Designed and developed 802.1X supplicant service w/interfaces to support GUI service requests and NDIS indications for the Intel 4965 series of wireless chipsets.
- Designed and developed NDIS miniport device driver for an 802.11 network card. This device driver employed spin locks for SMP operation, cache coherence algorithms, and power save critical sections. Designed and developed associated utilities which included the following: OCX objects, OLE Containers, Installable Device Drivers in C++ implementing power management messages, transport driver in C++ using filter libraries and Registry installation.
Confidential
.NET DeveloperResponsibilities:
- Designed client-server SSL test scaffold for TURN and STUN server.
- Used standard peer multi-threading model.
- Designed device driver for an ISO7816 interface smartcard on the Confidential ’s Secret Internet Protocol Routing Network (SIPRNet) using PKCS#11 APIs. Interfaced with Extensible Key Management (EKM) providers for real-time SSL SaaS implementation.
- Developed WDM PCI coprocessor driver, this was cross platform to Linux.
- Developed ChipScope debug utilities for Vertex 5 platform. Augmented algorithm to split data at the bit level, create any number of shares (1-8), and distribute them according to number of shares required for reconstruction (any 1…X of X provides reconstruction.)
- Developed interface to AES buffer routine with SHA/MAC verification.
- Environment was cross platform Windows Server 2003 and Linux.
- Developed Vista SSO credential provider interface for domain and network authentication.
- Analyzed performance of PC security products on the effect of privilege level transition, polymorphic memory images, and Windows monolithic cache interfacing. Analyzed impact of new design changes on wireless IPSec and Wireless Transport Layer Protocols (WTLP). Did maintenance on intrusion detection system.
Confidential
.NET DeveloperResponsibilities:
- Designed modifications to OpenSplice to improve determinism and performance.
- Modifications strategically positions new product with advantages over AMQP, DDS, RabbitMQ.
- Designed and developed IO Multiplexor/Dispatcher system with picosecond context switching times.
- This formed the basis of a Directed Acyclic Graph with obvious HPC ramifications in Confidential and database.
- Designed and developed kernel mode driver to assess performance parameters of DPC prioritization and hard processor affinity.
- Designed and developed host and device USB software for isochronous pipe transfer of 3D data; Designed and developed flash download for BRCM 2763 camera board.
- Designed and developed Linux video interface test programs using /dev/video0 and /dev/dvb/adapter0/frontend0
- Optimized DirectShow system by reducing indexing interference from file system.
- Designed improvement to synchronization mechanisms for MPEG-2 tracks in a server appliance.
- Developed WHQL compliant testing strategy for security devices in USB and ECP environments.
- Designed “class driver - port driver” driver architecture for VME system. Interfaced drivers to VME interrupt structure. Implemented performance dll and performance kernel device driver.
- Designed driver architecture for USB system for delivering video data.
- Designed and developed installation program for a compound USB device where the inner device was a legacy flash device.
Confidential
.NET DeveloperResponsibilities:
- Created multistage pipelined messaging system using lock-free paradigms for theoretical infinitely distributed multiprocessor speedups.
- Developed UML sequence diagrams and class diagrams for accurate project details.
- Designed and developed Windows application to manage autologger tracing sessions.
- Designed and developed Linux device driver to interpret E820 and UEFI memory map interpretation.
- Designed and developed a Windows desktop performance optimizer. Project Dates:: Designed pipelined system using .NET and designed enhancements using CLR modifications
- Designed port of Windows 32 bit application to Windows 64 bit environment: included DirectX style device drivers with access from 32 bit applications into 64 bit driver memory; IPC between 32 apps and 64 bit apps; and developed automation for large Microsoft driver build system.
- Designed and developed MSVC build system for device drivers using App Wizards. Fixed all WHQL bugs other staff engineers failed at.
- GUI project to represent Confidential systems
- MFC Document-View patterns for GUI
- Design and develop memory injection tests and power cycle tests