1. 2325 Elliston Place #401
James Edmondson Nashville, TN 37203
Phone: (615) 957-4797
Education
2008-Present Vanderbilt University Nashville, TN
Major: Computer Science
Intended specialization in Distributed Real Time and Embedded Systems
Ph.D. Student, Department of EECS / Computer Science Program
Institute for Software Integrated Systems (ISIS) / Distributed Object Computing (DOC)
Group
Core graduate courses: Distributed Artificial Intelligence, Parallel Programming, Algorithms
Interests: Machine learning, swarm intelligence, parallel systems, compilers, and software
engineering
2004-2007 Middle Tennessee State University Murfreesboro, TN
Major: Computer Science Minor: Mathematics
GPA: 3.68 Major GPA: 3.84
Bachelor of Science – May 2007
McNair Scholar, Dean’s List, NSF CSEM Scholar, ACM Member
Attended Graduate Courses: Operating Systems, Parallel Architecture
1999-2000 Tennessee Technological University Cookeville, TN
Major: Computer Science
GPA: 2.78 Major GPA: 3.36
TTU Honors, 88.5 WTTU DJ
Professional & Research Experience
2006-Present Vanderbilt University Nashville, TN
Research Assistant, DOC Group
Working on testing infrastructure for QED project (cooperatively with BBN, Boeing, IHMC
and the Air Force Research Labs).
Developing visual modeling tools for object oriented programming languages (GOAL - http://
code.google.com/p/gmegoal ). Work in progress.
Developing resource allocation and cloud computing tools based on machine learning and
distributed AI (Madara - http://code.google.com/p/madara ). Will likely form MPD cloud
used by MPIES, an implementation of the MPI 1.0 spec which I co-developed (MPIES –
http://code.google.com/p/mpies ). Both are works in progress.
Researched the OMG DDS standard and vendor implementations of that standard including
RTI NDDS, PrismTech OpenSplice, and OCI TAO-DDS.
Designed and implemented the DDS Benchmarking Environment (DBE) used by the
Vanderbilt University DOC Group to empirically test OMG DDS implementations in
distributed, multi-processed test scenarios.
Developed test cases and conducted tests on latency and throughput for implementations of
DDS and other pub/sub architectures (GSOAP, JMS).
2006-2007 Middle Tennessee State University Murfreesboro, TN
Scientia Student Editor
Reading and summarizing ten years of student research in Computer Science at Middle
Tennessee State University.
2. Selecting student papers and writing articles for Scientia that outline the importance of
selected student papers.
Fall 2006-Spring 2007 Middle Tennessee State University Murfreesboro, TN
Undergraduate Research and Creative Project Scholar
Developing generic array preparation algorithm (Sift Algorithm) for comparison-based
sorting algorithms.
Researching algorithmic structures for inclusion in research methodologies and comparing the
effective results of using those structures against the Sift Algorithm.
Researching advanced implementations of the Sift Algorithm for specialized sorting cases and
working on the theoretical explanations and average case analysis for why the Sift Algorithm
accomplishes what it does. Results from preliminary tests are very promising with some
sorting algorithms like Insertion Sort and Bubble Sort performing at fractions of their
previous times.
Spring 2006 Middle Tennessee State University Murfreesboro, TN
Undergraduate Research and Creative Project Scholar
Applied for and received funding for development of teaching aid for undergraduate
Computer Architecture courses.
Designed and developed a compiler, interpreter, and GUI emulator called the Relatively
Simple Computer (RSC) Emulator which is currently being used by professors at MTSU.
Published results of research with Associate Professor Brenda Parker. Students showed
marked interest in using the Emulator and student retention and ability to build a final
computer improved noticeably.
2005 Middle Tennessee State University Murfreesboro, TN
McNair Summer Research Scholar
Researched a sorting algorithm called Multiple Pivot Sort (M Pivot Sort) that had very little
empirical testing published previously.
Empirically tested the algorithm against other comparison based sorting algorithms like
Merge Sort, Quick Sort, and Heap Sort. M Pivot Sort performed better than the pre-mentioned
algorithms on integer and string sorting for all cases at all sizes of lists (10-10,000,000).
Disseminated results to other scholars in the group through presentations, posters, and
publications.
Spring 2005 Middle Tennessee State University Murfreesboro, TN
Undergraduate Research Grant
Conducted preliminary research into new sorting algorithm methodologies. Focused on
existing algorithms and data structures like Minheaps.
Developed new data organization methodologies around heap structures, including a new
concept called a Reverse Maxheap. This research resulted in the first Sift Algorithm, which
requires data being organized with a Minheap and a Reverse Maxheap.
2000-2003 Aurum Industries, Inc. (defunct) St. Cloud, MN
Software Developer
Researched homogenous, embedded systems and worked on the design of a new Operating
System called ZROS. The target market was small, embedded devices that could
communicate in a networked manner and required a small memory footprint and hardware
requirements. Primarily worked with C and assembly language.
Developed server/client model software for businesses. Applications included POS, employee
tracking, and other applications that required databases and information management.
Primarily worked with C++, MFC, and the Windows API.
Designed and developed websites with and without database backends. Work included
graphic design, HTML editing, Perl, JSP, MySQL setup and maintenance, Apache, bind and
named configuration, etc.
3. Project leader of million line coding projects (ProCerts) and smaller projects comprised of
only thousands of lines of code. Coordinated teams of 4-5 persons on maintenance,
debugging, new feature design, technical workshops, and employee and customer training.
Presentations and Publications
Refereed Journal Publications
1. Hill, J. H., Edmondson, J., Gokhale, A., and Schmidt. D.C. Agile Development of
Component-based Distributed Real-time and Embedded Systems via Model-Driven
Engineering Techniques, IEEE Software [conditional accept]
Refereed Conference Publications
1. Hill, J. H., Turner, H., Edmondson, J. and Schmidt, D.C. (2009, April). Unit Testing
Non-Functional Concerns of Component-based Distributed Systems. Proceedings of the
2nd International Conference on Software Testing, Verification, and Validation (ICST),
Denver, CO.
2. Parker, B., Edmondson, J. (2006). Application of Simulation in Computer Architecture.
Proceedings of the 4th International Conference on Education and Information Systems:
Technologies and Applications. Orlando, FL.
3. Edmondson J., Hankins J. (2006). “M Pivot Sort – Faster than Quick Sort!” McNair
Research Review. Murfreesboro, TN.
4. Edmondson J. (2005). M Pivot Sort – Replacing Quick Sort. Proceedings of the 2005
International Conference on Algorithmic Mathematics and Computer Science. Las
Vegas, NV.
4. Refereed Poster Presentations
1. Edmondson J., Parker B. (2007, April). Application of Simulation in Computer
Architecture. To be presented at poster session of MTSU Scholars Week 2007.
Murfreesboro, TN.
2. Edmondson J., Hankins J. (2007, April). The Sift Algorithm. To be presented at poster
session of MTSU Scholars Week 2007. Murfreesboro, TN.
3. Edmondson J. (2006, April) The Sift Algorithm. Poster session presented at MTSU
Scholars Week 2006. Murfreesboro, TN.
4. Edmondson J., Hankins J. (2005, July) M Pivot Sort – Faster than Quick Sort! McNair
Summer Research Symposium. Murfreesboro, TN.
Unfinished Manuscripts
1. Edmondson J., Hankins J. “New array preparation technique for comparison-based sorting
algorithms.” Currently preparing document for journal submission. Preferably Journal of
the ACM.
Technical Expertise
Programming Languages: proficient in C/C++, Visual C++, HTML, Perl, Java,
Javascript, XML, SQL, Visual Basic, Assembly Language, and byte code
programming.
OS Platforms: Linux (Debian, Ubuntu, Storm, Red Hat), Windows (95, 98, Me, NT
4.0, 2000, XP), SCO Unix
Middleware and Software Development Kits: Windows API, Microsoft Foundation
Classes (MFC), MPI, Apache Runtime (APR), ACE, and TAO.
Programming Environments: Microsoft Visual Studio, Microsoft .NET, Eclipse,
Programmers File Editor.
Modeling Tools: Generic Modeling Environment (GME), Visio
Database Applications: Postgre SQL, MySQL
Other: Subversion (SVN), Concurrent Versioning System (CVS), Wiki, Apache, Bind,
Named, algorithmic development
Activies and Awards
Fellowships/Scholarships
Research Assistant Position (Vanderbilt, awarded 2007-2009), McNair Scholar
(2005-2007), Undergraduate Research and Creative Programs Scholarship (Spring 2006,
Fall 2006-Spring 2007), MTSU Computer Science Square D Computer Science Scholarship
Award (Spring 2006), Undergraduate Research Grant (Spring 2005).
Leadership Positions
Director of Web Services (Aurum Industries, Inc. 2001-2003), Secretary of the Board
(Aurum Industries, Inc. 2001-2003), Project Leader (MPIMT Project at MTSU 2006)
Other
Association for Computing Machinery (2004-2006)
Interest My interests include consulting, coding at lower levels (like assembly language and C),
traveling, gaming, and reading science fiction.
References Available upon request