Kelly D. Crawford, Ph.D.
Click here for a PDF version of my resume
Doctor of Philosophy in Computer Science
1989 - 1996 The University of Tulsa - Tulsa, OK
- Thesis: The Role of Recombination in Genetic Algorithms for the Fixed-Length Subset Problem (Dissertation Abstracts Number: 9624777)
Master of Business Administration
2009 - 2011 Oklahoma Christian University - Edmond, OK
- Major: Finance
- Graduated member of Delta Mu Delta honor society
Master of Science in Computer Science
1984 - 1986 The University of Tulsa - Tulsa, OK
- Thesis: An Analysis of Parallel Sorting Algorithms and Techniques
Bachelor of Science in Computer Science
1981 - 1984 Oklahoma State University - Stillwater, OK
2013: Apple, Inc., Sunnyvale, CA
Senior Developer (Contract Position)
2012 - 2013: ExecuTime Software, Norman, OK
Senior Developer (Contract Position)
2012: University of Oklahoma, Norman, OK
- Co-teaching CS3202 – Software Requirements and Specifications. Students gather requirements from actual clients and produce specifications detailing those requirements.
2002 - 2012: MSCI/RiskMetrics Norman, OK
Vice President/Senior Developer
2001 - 2002: Teloptica, Richardson, TX
- Manager and developer for the SOA/Middleware development group (May 2012). Managing a group of 7 people across two disjoint projects. Tasks include evaluating third-party software as an option to replace existing in-house systems, and charting a plan for the next generation of MSCI's SOA system. Also involved in various post-merger integration activities. Skills used include Java SE, XML, CLISP, and a general working knowledge of SOA technologies.
- Manager and developer for the Counterparty Credit Risk and WealthServer (portfolio simulation and asset allocation optimization) development groups. Managed a group ranging from 2 to 3 people. Interfaced with two different research and business groups to determine requirements. Determined project plans and monitored progress. Skills used include Visual Studio .NET, C++ (STL), XML, and quantitative finance (mathematical and statistical analyses, Monte Carlo simulation techniques, LP, QP).
- Manager, developer and lead designer, for the Factor Server project. Factor Server is a tool for performance analysis on fixed-income securities. Managed a group ranging from 3 to 13 people. Interfaced with research and business groups to determine the feature set for this new product. Managed project plans and continually monitored progress. Skills used include Visual Studio .NET, C#, LINQ, XML, Microsoft Project, and quantitative finance.
- Designer and developer for the RiskServer analytics development group. RiskServer is a financial analytics web service that is the backbone calculation engine for all RiskMetrics products. Skills used include C++, Visual Studio .NET, XML, quantitative finance (advanced mathematics and statistics), and optimization support (e.g., linear programming).
- Designer, developer and manager for the RiskManager development group. RiskManager is financial risk analysis software used by large corporations to assess the risk of financial holdings. Managed a group ranging from 1 to 5 people. Interfaced with business and research to solicit client requirements. Planned projects and organized new feature requests and releases, as well as regular bug fixes and reviews. Skills used include Java, JSP, MSSQL/JDBC, Apache, Tomcat/Struts, XML, Eclipse and JBuilder environments.
- Co-Manager of the Operations/Application Management group dedicated to second line customer support and day-to-day monitoring of the RiskManager ASP (Application Service Provider) environment. Built the new group from the ground up, organized day-to-day activities addressing client needs. The group has now grown into a 24/7 operation with dozens of people in offices worldwide, including Berkeley, Norman, New York, London, Budapest, and Mumbai. Provided programming and database support as well as general troubleshooting of client issues, rollout of software, etc. Skills used include C#, Visual Studio .NET, XML, Java/JSP, MSSQL, Apache/Tomcat, Windows Task Services.
- Designed and developed optimization algorithms for an automated telecommunications network planning, design and optimization system (SONET ring and mesh network topologies). Skills used include Java, Borland JBuilder 4, Rational Rose and network optimization techniques.
2001: Ventura Technologies, Plano, TX
- Designer and developer of Java application for statistical analysis of loan data. Developed components for correlation, curve fitting, principal component analysis and k-means clustering. Skills used include Java, Borland JBuilder 4, Rational Rose, statistical analysis and other scientific computation techniques.
2000 – 2001: Software On Line, Plano, TX
CIO and Vice President, Systems Development
2000 – 2001: Stone Bennett, Carrollton, TX
- Contract programmer for Stone Bennett's GoPower engine monitoring software.
- Required understanding of standard SAE protocols J1708/J1587 and J1939.
- Data is gathered through a serial interface using a Dearborn Protocol Adapter API.
- Skills used include C++ (Visual Studio), MFC, ActiveX/COM.
1997 – 2000: ARCO Exploration and Production, Plano, TX
Systems Consultant - Computing Technical Research Group
- Successfully applied genetic optimization techniques to the problems of gaslift optimization (3 separate fields and applications), automated material balance and multiple suppression (C/C++, MS Excel/VBA). Coauthor of 2 patents in these areas.
- Developed optimization toolbox containing genetic algorithms, bit climbers (stochastic hill climbers), evolutionary programming, etc (C/C++, Java).
- Successfully applied modifications to the traditional bit climber to work for normalized solution spaces, resulting in a new, highly versatile optimization tool (C/C++).
- Developed and taught various programming classes to ARCO employees (C, C++, Intro to Programming)
- Served as POSC liason/contact for ARCO. Worked on developing POSC standards at ARCO and in the industry. Developed working prototype of a POSC datastore (C, OODB).
- Project lead for the ARCO PetroBank Pilot, a multi-operating company project to test IBM’s PetroBank databanking tool.
1995 - 1997: Amoco Production Company, Tulsa, OK
- Member of Seismic Coherency Cube project. Responsible for development and maintenance of coherency cube software (C, Fortran, X/Motif).
- First-line user assistance for parameterization, execution and troubleshooting of all coherency products.
- Initial point of contact with several geophysicists from three of Amoco’s Business Units.
- Designed and developed GUI for parallel coherency processing as an aid to technology transfer (C/C++, X/Motif).
- Responsible for initial installation of Amoco’s coherency cube software at Coherence Technology Corporation (CTC).
- Responsible for integrating Amoco’s proprietary seismic system with GeoQuest (IESX, C, Fortran). Responsible for technical evaluation and possible future integration with Stratimagic (CGG/Elf).
- Technical lead for future research and development of 2-d and 3-d seismic texture analysis and segmentation (C/C++, Fortran, X/Motif).
1993 - 1995: Amoco Production Company, Houston, TX
- Member of Amoco’s Hewlett-Packard workstation cluster team. Responsible for development and maintenance of various system utilities (C/C++, Fortran, Tk/Tcl).
- Provided user support and maintenance for all Hewlett-Packard based seismic applications (C/C++, Fortran).
- System Architect for Amoco’s Business Process Reengineering (BPR) effort (6 months). Technical liaison between two of the five BPR groups (C, PowerBuilder).
1985 - 1993: Amoco Production Company, Tulsa, OK
- Designed and developed parallel applications for seismic processing (seismic migration). Provided end-user support (C/C++, Experimental languages like ES-Kit Parallel C++ and PCN).
- Represented Amoco in various consortia (Cal-Tech, MCC, The Rice Inversion Project).
- Designed and developed a GUI for display and manipulation of gravity/magnetic data (C, X/Motif).
- Part of team that designed and developed a portable screen management utility for support of form-based programs across VM/CMS, Unix and PC systems (C, Fortran, X/Motif, GDDM).
- Original designer for the commercially available UniXedit tool.
- Part of a team that established programming standards for Amoco’s Research Center (C/C++, Fortran).
- Designed and developed software tools for analysis and support of Amoco’s many scientific Fortran programs, including smart editors, documentation utilities, automatic preservation of consistency between source and object code, version control and a tool to support various useful Fortran 90 features (C, Fortran, various macro languages).
- Served as committee head and emcee for Amoco’s semi-annual Research Center Technical Meeting.
- Performed numerous evaluations of third-party software.
1988 - 1993: The University of Tulsa - Tulsa, OK
- Developed and taught 7 sessions of an introductory computer science class ("Fortran for Engineers").
Environments and Languages
- Primary languages: C++, C, Java, C#, VBA
- Primary IDEs: Microsoft Visual Studio .NET, Eclipse
- Primary environments: Windows, Mac OS X
- Experience with Unix (1987-2001; still use some at home on Mac OS X)
- Experience with Microsoft Office tools
Martin, M., N. G. Grounds, J. K. Antonio, K., Crawford, J. Madden, “Banker’s Deadlock Avoidance Algorithm for Distributed Service-Oriented Architectures”, Proceedings of the International Conference on Parallel and Distributed Processing Techniques and Applications (PDPTA '10), sponsor: World Academy of Science and Computer Science Research, Education, and Applications (CSREA), Las Vegas, NV, July 2010.
Marfurt, K., V. Sudhakar, A. Gersztenkorn, K. D. Crawford, S. Nissen, "Coherency Calculations in the Presence of Structural Dip", Geophysics, January, 1999. (PDF)
McCormack, M. D., D. J. MacAllister, K. D. Crawford, R. J. Stoisits, "Applications of Genetic Algorithms in Exploration and Production", The Leading Edge (SEG, Tulsa, OK, 1999). (PDF)
Crawford, K. D., M. D. McCormack, D. J. MacAllister, "Modified Gradient Techniques for Normalized Solution Vectors (A Probabilistic, Learning Bit Climber for Normalized Solution Spaces)", GECCO 1999. (Word 97/Equation 3.0)
Stoisits, R. J., K. D. Crawford, D. J. MacAllister, M. D. McCormack, A. S. Lawal, D. O. Ogbe. "Production Optimization at the Kuparuk River Field Utilizing Neural Networks and Genetic Algorithms", SPE paper 52177 (OKC, OK, 1998).
Crawford, K. D., C. Hoelting, R. Wainwright, D. Schoenefeld, "A Study of Fixed-Length Subset Recombination", Foundations of Genetic Algorithms, 1996, Morgan Kaufmann Publishers. (PostScript)
Crawford, K. D., R. Wainwright, "Applying Genetic Algorithms to Outlier Detection", Proceedings of the Sixth International Conference on Genetic Algorithms, San Mateo, CA, 1995, Morgan Kaufmann Publishers. (PostScript)
Crawford, K. D., R. Wainwright, D. Vasicek, "Detecting Multiple Outliers in Multiple Dimensions Using Genetic Algorithms", Proceedings of the 1995 ACM/SIGAPP Symposium on Applied Computing, ACM Press, 1995. (PostScript)
Crawford, K. D., "Solving the N-Queens Problem Using Genetic Algorithms", Symposium on Applied Computing, March 1992.
Crawford, K. D., "An Analysis of Parallel Sorting Algorithms and Techniques", Abstract published at the ACM Computer Science Conference, 1986.
Crawford, K. D., "Rutabaga - A Genetic Algorithm Toolkit Library", ARCO Web-based Technical Manual, 1997.
Crawford, K. D., C. Hoelting, K. Marfurt, "2D Texture Analysis: A User’s Guide", Amoco Technical Report, March 1997.
Gersztenkorn, A., K. D. Crawford, "Time-Frequency Eigenstructure Coherence (c4)", Amoco Technical Report, March 1997.
Marfurt, K., V. Sudhakar, A. Gersztenkorn, K. D. Crawford, S. Nissen, "Coherency Calculations in the Presence of Structural Dip", Amoco Technical Report, January, 1997.
Crawford, K. D., R. Wainwright, "Research Question: How does one go about developing a new crossover operator with an a priori expectation of its merit? (A Survey of Crossover Operators for Genetic Algorithms)", Technical Report UTULSA-MCS-96-2, The University of Tulsa, February 1996. (PostScript)
Crawford, K. D., R. Wainwright, D. Vasicek, "Detecting Multiple Outliers in Multiple Dimensions Using Genetic Algorithms", Technical Report UTULSA-MCS-92-4, The University of Tulsa, July 1992 (Also, Amoco Technical Report, presented at an internal Amoco conference, May 1992).
Crawford, K. D., "A Practical Abstraction for Hierarchical Data Structures", Amoco Technical Report, February 1992.
Crawford, K. D., "Mixing Fortran and C Across the Major Platforms at the Tulsa Research Center", Amoco Technical Report, January 1991.
Bennett, C., C. Burstall, K. D. Crawford, R. Hill, "Portable File Manipulation Utilities", Amoco Technical Report, June 1990.
Michael D. McCormack, Kelly D. Crawford. "Removal of surface-generated multiple seismic energy using a genetic algorithm optimization procedure", 1998 (ARCO - Patent no. 6,154,705).
Richard F. Stoisits, Kelly D. Crawford, Donald J. MacAllister, Michael D. McCormack. "Petroleum Production Optimization Utilizing Adaptive Network and Genetic Algorithm Techniques", 1998 (ARCO - Patent no. 6,236,894).
Awarded for exceptional contribution to the achievement of company objectives through the development and technology transfer of coherency cube technology, 1996.
Awarded for outstanding efforts on an inter-divisional team to produce SAMMIG, an implementation of Kirchhoff seismic migration using a distributed workstation network as a parallel computing environment, 1993.
Awarded for successful implementation of a reservoir engineering simulation system as part of an inter-divisional team (GUI development), 1990.
Invited speaker and panelist for the technology transfer workshop AI Methodologies in the Oil Industry: Concerns & Rewards, sponsored by The University of Oklahoma, Sarkeys Energy Center, Rock Mechanics Institute, Norman, OK, October 7, 1999. (PowerPoint 97 Slides and Online Presentation)
Member of Program Committee for the Symposium on Applied Computing. Session Chair for technical paper sessions on Genetic Algorithms (1993). Paper reviewer for the Genetic Algorithm track since 1993.
Member of the Program Committee for the 1999 GECCO conference (Genetic and Evolutionary Computation Conference). Paper reviewer for the Real World Applications track.