Development philosophy
Full resume (DOC)

Contact Me

I focus on very fast, efficient and well-documented development, which results in high-quality deliverables. The focus is augmented by:
  • Over 15 years of very intense experience in programming

  • Very wide range of fields: from MFC-based GUI to custom OS kernels, BSP, device drivers, compilers and interpreters, network applications, 3D graphics, software optimizations and a lot more

  • Development discipline makes overall functionality and high-level design as well as all forseeable pitfalls visible and taken into account. This minimizes risk and makes for realistic and verifiable estimates

  • Quick learning of new fields

  • Efficient research: ability to raise the most substantial questions and efficiently find answers to them

In many cases it happened that the customers were stuck up to a year (or even more) with a project, or wondered if what they wanted is at all viable. Together we completed development from scratch in just several months.

Below is an illustrative list of projects that I did and time it took.

Project Summary Time
Device driver for a custom VME I/O card for LynxOS Study of VME bus, study of LynxOS, figuring out and producing workaround for LynxOS's inconsistency, writing and defining SRS, development of the driver, development of test suit for the hardware, testing hardware, testing the driver, supervising writing of the user manual. 4 months
BSP for embedded Linux and u-boot for a custom board. Study of the board, preparing the cross-compiling work environment, fixing memory-mapping problems, fixing IDE interface, fixing USB interface, writing interface for the custom controller (in CPLD), testing hardware. All development work was for both u-boot boot monitor and embedded Linux 4 months
Development of protocol library for MMS, HTTP streaming and plain HTTP protocols. researching for availability of the information (no authorized documentation from Microsoft was available), studying MMS and streaming HTTP protocols, writing the library, testing on Windows, testing on Linux, writing SRS 1.5 months
Development of ext2 allocation reporting software. Studying of ext2 allocation, writing software, testing it, writing SRS 1 months
Development of video streaming system for unmanned aircraft (transmit video from vehicle to ground station). Writing SRS, design, writing streamer part, writing client part, integration of codecs library (ffmpeg), optimizing video output code, testing 1.5 months
Development of flight health monitoring and video streaming connection control software. Writing SRS, communication design, writing server part (embedded Linux), writing 3 GUI programs (MFC), interfacing control hardware, testing hardware, writing ATP, testing software 3 months


(c) Daniel Drubin, 2007-2011