Profile photo

Kurt Gehlen

2nd

Previous positions

  • Senior Software Engineer at Proximal Data
  • Lead Software Engineer at International Data Casting

Education

San Diego State University, MS, Radiological Health Physics

223

Background

Summary

· Programming in several languages, including C, C++, Java, Perl, Python, PHP, Unix Shell Scripts, HTML, JavaScript and Assembly · Programming for various operating systems, including VxWorks, Linux and Windows · Software architecture including object oriented design · Embedded programming including Linux device drivers and board bring up · Experience in TCP/IP networking, sockets programming, IP routing and the Linux stack · Knowledge of MPEG-2 and H.264 video systems · Virtualization on VmWare and HyperV · Familiarity with various caching algorithms · Knowledge of storage area networks Specialties: C, C++, Java, MPEG-2, Linux, VxWorks, Virtualization, Storage

Experience

  • Senior Staff Software Engineer

    Samsung

    November 2014 – Present(4 years 11 months)Greater San Diego Area

    o Developed a flash based caching solution for ESXi based on VmWare’s VMIOF framework o Wrote a simulator in C++ to speed development and enhance testing of the caching plugin by simulating both the the virtual machine and the virtual disk in an ESXi system o Developed a Linux device mapper plugin and Windows filter driver that performed deduplication and compression to effectively enhance the storage capacity of flash devices o Architected and developed a scalable clustered object store which included data distribution and redundancy using key-value flash devices

  • Senior Software Engineer

    Proximal Data

    December 2011 – October 2014(2 years 10 months)Greater San Diego Area

    o Developed a flash based Virtual Machine storage caching system for ESXi and HyperV o Developed a Windows file system minifilter driver that acted as the front end to the caching solution. o Wrote ESXi hostprofile and esxcli plugins in Python. o Obtained certification for a Windows file system filter and PNP Device Drivers.

  • Lead Software Engineer

    International Data Casting

    March 2000 – December 2011(11 years 9 months)Greater San Diego Area

    o Systems Engineer/Software Lead Engineer for a Linux based IP Encapsulator/IP to ASI router. o Wrote a Linux network driver for the IP Encapsulator ASI output. o Project Manager/Software Lead Engineer for MPEG transport stream multiplexer product line. o Wrote C++ components for MPEG packet processing and section re-assembly, collision resolution for MPEG identifiers, system configuration management, and license management. o Developed a web interface for the multiplexer; tasks involved modifying the web server, creating pages using HTML and JavaScript, and writing a Java applet that used Swing components to display and edit the contents of the transport stream. o Wrote MPEG-2 utilities including a video parser and a prototype stream splicer. o Wrote an object oriented class library in C++ to abstract operating system functions and implement recurring software patterns. o Brought up PowerPC 440 and PowerPC 860 based boards using an emulator and reference design. o Wrote programming routines for Xilinx FPGA.

  • Software Engineer

    Cayenta.com

    1999 – 2000Greater San Diego Area

    o Worked with Sempra Energy to move its HR and payment systems from an older mainframe application to an SAP system. o Wrote software in Java to analyze and convert data records from COBOL based format into new format required for use in SAP system. o Used CORBA for reporting failures to central server. o Managed a SUN High Availability cluster.

  • Software Engineer

    Tiernan Communications

    1998 – 1999Greater San Diego Area

    o Worked on a Windows based network management system for Tiernan MPEG-2 encoders and decoders using Microsoft Foundation Classes and Visual Studio. o Wrote device drivers and control software in C for a Nucleus RTX based MPEG-2 encoder card. o Migrated encoder software to C++ and VxWorks. o Architected and implemented C++ software for modular MPEG-2 encoder product, including device drivers, system configuration, and monitoring and reporting components.

  • Software Engineer

    Tenth Mountain Systems

    1997 – 1998Greater San Diego Area

    o Developed C++ software for compliance testing suite with Secure Electronic Payments (SET) electronic commerce protocol developed by Visa and MasterCard. o Wrote ASN.1 Distinguished Encoding Rules parser in Perl, and RSA and DES decryption software utilities to analyze protocol messages. o Worked with SET and digital certificate toolkit to implement hundreds of test cases.

  • Software Engineer

    SAIC

    1995 – 1997Greater San Diego Area

    o Worked on network security assessment tool for Department of Defense contract. o Researched and integrated existing exploitation tools into the assessment tool. o Created new tools in C, Bourne shell and Perl to implement known exploits. o Collected results of tools using Perl scripts and reported them to central database. o Worked as member of a team performing analysis on secure electronic commerce protocol developed by Microsoft and Visa (Secure Transactions Technology). o Wrote software to facilitate interoperability testing between vendor implementations of the STT protocol.

  • Intern

    Oak Ridge National Laboratory

    1994 – 1994Oak Ridge, TN

    o Worked with Fortan code using the Monte Carlo method to simulate radiological dose to organs from internal sources in pregnant women. o Wrote software in C to analyze and display results of Monte Carlo simulation code.

Education

Skills & Expertise

  • Device Drivers
  • RTOS
  • Software Design
  • XML
  • Perl
  • MPEG2
  • H.264
  • Embedded Software
  • Object Oriented Design
  • VxWorks
  • Linux
  • TCP/IP
  • Embedded Systems
  • PHP
  • C
  • C++
  • Shell Scripting
  • Operating Systems
  • Programming
  • Java
  • Software Development