Peter Danford
pdanford@pdanford.com
Summary |
Senior Software Engineer with over 15 years diversified experience in highly technical and demanding projects. Wide range of experience from *nix device drivers to large distributed stock analysis systems as well as team management. Record of solving challenging problems requiring original and creative solutions. Extensive knowledge of mathematics and physics. |
Skills |
Languages: C++, C, Python, JavaScript, Assembly, Bash Related technologies: STL, Boost, CUDA, TCP/IP, UDP, MFC, OpenGL, Cloud Computing, Stock Brokerage APIs, HTTP, HTML, XML, OpenMP, Streaming SIMD Extensions Servers and tools: gcc, make, VMware, Cygwin, custom AMIs in Amazon’s Elastic Compute Cloud and S3, nginx, svn, git, Microsoft VS 2010 Operating systems: Linux (Debian based distributions), Windows Development: • System level programming • Application level architecture/implementation • Object oriented analysis, design, and implementation • Socket/datagram network programming using TCP/UDP • Translating domain requirements into technical requirements • Distributed systems and cluster architecture/implementation • Code architecture focusing on re-usability and maintainability • Application Parallelization for multi-core architectures • Algorithm Parallelization for GPUs (CUDA) • Real-time simulation of complex systems • Client-server application design • 3D graphics Team Management: • An aptitude for diplomatic problem resolution • Proven ability to manage priorities on large projects • Facilitating effective synchronization between various project groups • Effective
delegation of tasks to team members with sensitivity to |
Experience |
STI is essentially a think tank established in the 1950's to solve advanced engineering problems. They also foster their own products that evolved out of various research efforts over the years. As a prime contractor to government and a consultant to industry, STI is presented with unusually difficult problems. They craft solutions as well as implementations using advanced engineering principles. Example projects worked on include: • Real-time video stream modification using custom parallel gpu algorithms (implemented using CUDA) to present an operator wearing a HUD with various augmented reality views. Examples in this category include development for NASA to be used by pilots while in-flight. • Real-time simulation of complex systems (e.g. gas turbine engines). • Optical 6DoF tracking of pattern targets with a single camera. • Automated landing of multi-axis vehicles based on real-time control predictions and optimizations. |
|
Architected a high performance configurable proprietary strategy research and back testing system to discover and investigate disparate equity selection strategies. System implemented in C++ using Microsoft Visual Studio and Linux g++ to accomplish a cross platform computation pool. System developed utilizes parallel CPU computing techniques requiring multi-threading and custom TCP socket networking code (as well as UDP datagrams). Solution space is in part explored by Genetic Algorithms coupled with configurable strategy components ranging from machine learning strategies to standard technical analysis of stock trends. The project was split between two main parts: an Agent that orchestrates and manages analyses and the analysis servers that run in parallel on many host machines. The servers typically ran on distributed Windows machines and/or Linux machine images running in Amazon’s Elastic Compute Cloud (EC2) and Simple Storage Service (S3). |
|
Requirement was for a C++ equities algorithmic trading system providing management and trade execution on multiple open positions in real-time. Position exit decisions were governed according to specified algorithmic rules thus facilitating varied optimum exit strategies as well as dynamic position re-entry to maximize profits. Additionally, the project required real-time adaptation of strategies throughout the trading day as market dynamics evolved. Actual executions were accomplished via TCP network API to a global electronic market maker. |
|
Developed software (C++, C#, and Python) for nCode International's SoMat Products Division’s (Urbana) modular data acquisition systems. Initially brought in to address an emergent need to implement an interface layer between their user interface software and the networked data acquisition units in the field. Later focus was on data acquisition unit’s calibration and validation software. |
|
Managed project’s software production on large scale multi-million dollar flight simulator systems. Position required ability to produce software that meets customer’s unique requirements, manage resources to meet internal schedules, and manage those on projects' software team. This included all aspects of software development such as forecasting schedules and interviewing new team members for hire. Object Oriented software design and implementation for high fidelity flight simulator systems using real-time software techniques and C++ for Linux and Windows based systems. This position required strong C++ implementation and architecture skills, a through understanding of object-oriented design techniques including UML, the ability to take initiative in solving complex problems, an understanding of how to develop reusable software. In addition, responsibilities included systems modeling and hardware integration; extensive physics based mathematical models of aircraft flight dynamics, systems, and subsystems. Rotary wing simulators were main focus. Operating systems targeted: Windows XP, ETS 10.1 (Phar Lap Software Inc), and Linux. TCP/UDP Network programming also required as simulator systems were comprised of several computers linked via custom socket protocols. |
|
Worked as independent contractor on a suite of web-based tools that allows colleges and universities to develop, manage, and assess program and student achievements. Primary focus was Java application development to support online scholastic software such as writing custom HTTP server and systems programming. |
|
Performed large variety of tasks relating to daily super computer operations on an independent basis as well as working with others. Duties included monitoring systems, crash recovery, backups, mass storage operations, managing users’ jobs, programming and script writing as needed, monitoring Help Desk requests, network monitoring, etc. Systems included Cray 2, Cray Y-MP, Cray Origin, Thinking Machines CM-5, Convex 3880, Convex C-220, Convex Exemplar, SGI Power Challenge Array, and Sun/SGI workstations. Attended school while employed. |
|
Independently operated a pilot scale selective catalytic reduction reactor located at Tennessee Valley Authority's Shawnee Steam Plant in Paducah, KY. Responsibilities included data acquisition, periodic maintenance of analyzers, electrical systems (including three phase), and reactor. Demonstrated ability to work with minimal supervision and gained exposure to other engineering disciplines. Attended school while employed. |
|
Designed and developed a multi-user Enhanced 911 Computer Assisted Dispatch System used to manage emergency calls for police, ambulance, and fire in real-time. This included tracking units in the field and recommending the unit(s) closest to the caller's traced phone company address. Also managed unit status and dispositions. The main system was in C and Assembly Language (19,500 lines in x86 Assembly) which also included low-level custom device drivers for Xenix. The report generators and data management subsystems were written in an xBase language. |
Education |
Bachelor of Science in Computer
Science (2007) The Academic Ranking of World Universities (ARWU) places UIUC as 4th in world rank in Engineering/Technology and Computer Sciences (2010). U.S. News & World Report consistently ranks UIUC in the top 5 for CS. Also, Engineering at Illinois is #1 on world's "Most-Cited" list (2010). Major in Computer Science with core Electrical and Mechanical Engineering courses as cross disciplines. _________________________________________________________ Associate in Science in Electronics
Engineering Technology (1993) DC/AC circuit design, microprocessor design and applications, and electronic systems theory. _________________________________________________________ Coursera Professional Development: • Probabilistic Graphical Models - Daphne Koller, Stanford University (2012) • Machine Learning - Andrew Ng, Stanford University (2012) _________________________________________________________ Associations: • Eta Kappa Nu (HKN) Member/1996 Engineering
Open House Committee • Mu Alpha Theta (MAΘ) Member (outstanding math honorary society) • Alpha Omega (AΩ) Member (academic excellence honorary society) • ACM Professional Member |
Additional |
Achievements and Personal Interests: • Private Pilot License • PADI Advanced Open Water Certification • 2nd Spoken Languages (not fluent, but improving): o Mandarin o Thai |