Skills


* Click on a skill to see a list of projects I have done that used that skill

Years of Experience

6+ Years
5-6 Years
3-4 Years
1-2 Years
(Hover to highlight)

Work Experience


Lead Developer @ Global Dressage Analytics

Feb. 2011 - Present

Responsible for the engineering aspects of developing a web-based analytics toolkit for dressage athletes, judges, and trainers.

Contributions

  • Designed the architecture for the web application from the ground up
  • Made new visualizations (based on Javascript) to quickly communicate the results of the analysis to the user
  • Developed the analysis algorithms to reduce large score data sets (several million scores) into performance parameters that can be easily understood by the user
  • Implemented a predictive analysis to allow users to project their performance to some time in the future
  • Helped create the frontend for the web application (html/javascript/css)
  • Designed and implemented an asynchronous precalculation and caching mechanism to increase performance in the case where an analysis that a user may wish to view takes more than a few seconds

Primary Skills Used

Python Django Javascript CSS/CSS3 HTML/HTML5 SCRUM/Agile jQuery LESS Statistical Modeling Celery RabbitMQ Test-Driven Development REST SQL MongoDB MySQL

Key Projects

  • dressageanalytics.com is a web application which allows atheletes who participate in the equestrian sport of dressage to track their progress, predict their future performance, get training suggestions, and compare their performance with that of their peers.


Software Engineer (Contractor) @ University of Tennessee

Dec. 2011 - March 2012

Designed software for interacting with the Pixel Luminosity Telescope, a next-generation particle tracking experiment based on monocrystalline diamond detectors.

Contributions

  • Created a web-based user interface (based on Django) to provide operators with a simple-to-use tool to run the powerup routines, calibrations, and data runs
  • Made python bindings for the existing C++ infrastructure (which I also built)
  • Trained a new graduate student on how to run and develop the web-based user interface that I made

Primary Skills Used

Python Django Javascript CSS/CSS3 HTML/HTML5 Java C++ XML JSON SVN Device Physics VME

Key Projects

  • The Pixel Luminosity Telescope (PLT) is a next-generation diamond detector which uses the same complex and highly advanced readout electronics as the Compact Muon Solenoid's (CMS) Pixel Detector System. Operating the control software by hand is difficult for someone who has less than a few years of experience with the detector. Therefore, it was necessary to create a user interface which is easy enough for anyone to use to operate the system, log its state at any given time, and do quality assurance on the data that comes out of the detector. I was commissioned to design and implement this UI using web-based tools.


Lead Developer (Contractor) @ La Casa Del Sol

April 2010 - Oct. 2010

Developed web presence and web application for a real estate business based in Barcelona, Spain.

Contributions

  • Developed a Joomla! plugin which allowed La Casa del Sol's employees to maintain and display a list of apartments which they represented
  • Implemented the internationalization infrastructure, which supported English, Spanish, and Russian
  • Created a pure javascript slideshow plugin which integrated layers of static navigation

Primary Skills Used

Javascript CSS/CSS3 HTML/HTML5 jQuery PHP MySQL

Key Projects

  • La Casa del Sol (unfortunately now out of business due to the owner having to leave Barcelona) was a real estate business which helped connect prospective buyers/renters to condos/apartments located in Barcelona, Spain. They relied on a web application which I designed that allowed them to make a searchable list of apartments which they represented.


Programmer/Research Assistant @ University of Tennessee

Aug. 2008 - Dec. 2011

Designed control, instrument driver, visualization, and analysis software for the Pixel Luminosity Telescope, a next-generation particle tracking experiment based on monocrystalline diamond detectors.

Contributions

  • Designed and implemented calibration algorithms for intelligently tuning instrument operational parameters
  • Created and implemented the data acquisition framework
  • Managed system tests (~15 people present) in particle beams to measure fundamental parameters of diamond detectors, such as resolution, charge collection depth, efficiency, and sensor lifetime
  • Designed the web-based detector monitoring framework for the CMS Beam and Radiation Monitoring (BRM) group, which was the first place where beam was seen in CMS
  • Analyzed the data taken by a diamond-based monitoring device called the Beam Conditions Monitor 1L (BCM1L) to measure important parameters such as the minimum sensitivity, which were in turn used to set beam abort conditions for CMS

Primary Skills Used

Python Java C++ Advanced Mathematics Statistical Modeling Device Physics VME

Key Projects

  • Diamond is a radiation-hard and heat-tolerant material, which makes it useful as sensor material in harsh environments such as those found in modern particle accelerator interaction regions. I have helped to quantify properties such as spatial resolution, charge collection depth, and the Lorentz Angle in lab-grown diamonds to establish their suitability for different applications.

  • The Zurich Beam Telescope is a silicon micostrip tracker capable of delivering 1 micrometer resolution for localizing charged particles which pass through it. This high resolution is useful for studing the characteristics of many other particle detectors, which may be inserted inside of the assembly to provide detailed studies of the spatial behavior of the instrument.

  • The Pixel Luminosity Telescope (PLT) is a next-generation diamond detector which uses the same complex and highly advanced readout electronics as the Compact Muon Solenoid's (CMS) Pixel Detector System. Calibrating and operating the system is a complex exercise, and I was commissioned to help design the software and firmware to deal with it.

  • The BRM Data Logging and Analysis Framework takes data from a number of sources--my GUTS framework, a CORBA-based CERN standard protocol called CMW, and another CERN-standard protocol called DIP--and logs the data to files, which are nightly archived to deep storage through CERN's heirarchial storage solution called CASTOR. After the data is archived, it is analyzed using a ROOT-based data analysis package which can extract various instrument performance parameters.


Research Assistant @ University of Tennessee

Oct. 2006 - Aug. 2008

Developed software and implemented high performance computing infrastructure for both the University of Tennessee Physics Department and the Compact Muon Solenoid experiment at the Large Hadron Collider at CERN.

Contributions

  • Implemented a distributed file system (Lustre) on a Beowulf cluster used for physics analyses
  • Created the real-time instrument monitoring framework for the CMS BRM group
  • Developed a software package for transferring data from instruments to displays over the network in real-time
  • Developed a scalable mechanism for monitoring errors in the 66 million pixel channels in the CMS Pixel detector

Primary Skills Used

Python Java C++ XML Spring Servlets CORBA Swing

Key Projects

  • DIP-Cache is a realtime data caching server which accepts data coming from any source that publishes its data through the Data Interchange Protocol (a CERN standard communication protocol). In addition to simply caching data as it comes in, it responds to queries which allow the user to limit the data length, select the most recent time stamp, choose a specific instrument ID, etc.

  • The Beam and Radition Monitoring (BRM) realtime display framework takes the highly important radiation monitoring data which comes from the BRM subsystems and displays it in such a way that shifters can monitor it 24/7 to make machine-safety decisions based upon the displayed data.

  • GUTS is a library, used by CERN's Compact Muon Solenoid Experiment, which serializes arbitrary java objects and transfers them to a list of connected clients for processing. The primary use of this library is to transfer data between two distinct networks: CERN's Large Hadron Collider Machine Network, and the Compact Muon Solenoid network. This library works only one way--i.e., the protocol accepts no direct feedback from the clients--in order to satisfy the strict security standards required by CERN management for software which bridges the two networks.


Lab Assistant @ University of Tennessee

Dec. 2005 - Oct. 2006

Developed software applications to run the equipment used by students in physics lab classes.

Contributions

  • Created a hardware/software solution for measuring and visualizing electric fields on conducting paper
  • Implemented control software for controlling an X-ray machine for use in a Bragg diffraction experiment
  • Developed control software to control a Cesium heatpipe experiment
  • Made an application for measuring Compton scattering by controlling a stepper motor, radiation detector, and a gamma source
  • Helped to setup laboratory experiments

Primary Skills Used

Advanced Mathematics Device Physics LabVIEW MATLAB

Key Projects


Education


Master of Science in Physics

University of Tennessee

Summa Cum Laude

December 2011

GPA: 3.85 on a 4.0 scale

Bachelor of Science in Physics

University of Tennessee

Summa Cum Laude

May 2008

GPA: 4.0 on a 4.0 scale


Awards


  • Chancellor's Citation: Professional Promise, University of Tennessee - Knoxville (2011)
  • Sigma Pi Sigma Honors Society, University of Tennessee - Knoxville (2008)
  • Outstanding Undergraduate in Physics: Academic Achievement, University of Tennessee - Knoxville (2008)
  • Douglass V. Roseberry Award, University of Tennessee - Knoxville (2008)
  • Chancellor's Citation: Academic Achievement, University of Tennessee - Knoxville (2008)
  • Top Collegiate Scholar, University of Tennessee - Knoxville (2008)

Publications


* Primary Author
  1. * “Studies of mono-crystalline CVD diamond pixel detectors”, W. Bugg et. al, Nuclear Instruments and Methods in Physics Research Section A: Accelerators, Spectrometers, Detectors and Associated Equipment, In Press, Corrected Proof, Available online 24 December 2010, ISSN 0168-9002, DOI: 10.1016/j.nima.2010.12.161.
  2. * “Performance of a single-crystal diamond-pixel telescope,” R. Hall-Wilton et al., PoS RD09:027,2009.
  3. “Results from a beam test of a prototype PLT diamond pixel telescope,” R. Hall-Wilton et al., Nuclear Instruments and Methods in Physics Research Section A, doi:10.1016/j.nima.2010.04.097
  4. “Commissioning and Performance of the CMS Pixel Tracker with Cosmic Ray Muons,” Serguei Chatrchyan et al. (CMS Collaboration), JINST 5:T03007,2010.
  5. * “Diamond detectors for radiation and luminosity measurements in CMS,” R. Hall-Wilton et al., Nuclear Science Symposium Conference Record (NSS/MIC), 2009 IEEE
  6. * “Display Framework Documentation for Beam and Radiation Monitoring Group.” CMS Detector Note.
  7. “The CMS experiment at the CERN LHC”, CMS Collaboration (R. Adolphi et al.), JINST 0803:S08004, 2008, JINST 3:S08004, 2008.
  8. * “GUTS (Generalized Unilateral Transfer Server).” CMS Internal Note.