Introduction
With a deep background in computer science, mathematical modeling, and humane communication, I make immediate and lasting contributions to teams developing software for diverse purposes. My experiences as an interdisciplinary scientist, a teacher, and a self-taught programmer make me sensitive to the ways that other people — whether collaborators or customers — think and communicate, and lead me to document my work carefully. I love style guides, code reviews, literature searches, and long hikes in the woods. I thrill to tricky technical problems that require insight and teamwork to solve. I am committed to using my skills and privileges to make the world a more just, sustainable, and creative place, and I seek opportunities to work with people that share that commitment.
Software Engineering & Research
-
Research Consultant at
Rhode Island Hospital (Bioengineering Lab, Orthopaedics Dept)
—
Providence, RI,
2013, 2016
- Diagnosed and resolved bugs in custom software triggered by topological artifacts in triangle meshes derived from MRI data. This enabled my client researchers to use a new and more sensitive technique for measuring cartilage thickness in pre-clinical trials for several years after my work.
- Built an extensible GUI application to allow non-programmers to use a custom software pipeline for MRI data processing.
-
Graduate Researcher at
Brown University (Visualization Research Lab, Computer Science Dept)
—
Providence, RI,
2006
– 2015- Designed a technique for model optimization in infinite-dimensional configuration spaces with both discrete and continuous parameters, supporting metaheuristics like simulated annealing.
- Created a mathematical model of brain structure and a GPU-accelerated algorithm to render synthetic MRI images from it.
- Collaborated across disciplines with scientists in Providence, RI; St. Louis, MO; Edinburgh; and Cape Town.
- Made frequent presentations, including over 25 one-hour talks given to my research group and others.
-
Software Engineering Intern at
Google —
Cambridge, MA,
2011
- Designed, developed, and deployed the MapReduce back end of a customer-facing user interface for latency analytics, which went live on my final day.
-
Engineering Technician at
Avid Technology —
Tewksbury, MA,
2002
– 2008- Researched and developed algorithms for video deinterlacing (machine learning), scene reconstruction (computer vision), and cryptographic steganography.
- Earlier projects included video codec evaluation; development of in-house codec testing workflow software; migration of the full corporate codebase to the Visual Studio .net compiler; software refactoring and optimization; software quality assurance; and network and hardware construction and maintenance.
Teaching
-
Instructor at
Phillips Academy (Math/Stats/CS Dept)
—
Andover, MA,
2015
– 2016- Taught AP CS, Software Design, Computer Graphics, and Data Structures.
- Designed the graphics course from scratch: a bottom-up approach in Python/Numpy and WebGL.
- Advised two teams, of three students each, on independent term-long projects: PACTF and Combinatorial Optimization.
- Co-instructed the outdoor learning program, Outdoor Pursuits, for two trimesters.
-
Visiting Instructor at
Carleton College (Computer Science Dept)
—
Northfield, MN,
2013
– 2015- Taught Intro, Data Structures, Discrete Math, Algorithms, and Software Design.
- Designed and taught an elective: Medical Image Analysis. Significantly redesigned Data Structures.
- Advised five student research assistants for two trimesters; advised three teams of seniors on two-trimester capstone projects; academic advisor for fourteen majors for one year. Managed undergraduate graders for most courses.
-
Instructor at
Brown University (Computer Science Dept)
—
Providence, RI,
2013
- Taught Intro to Computation for the Humanities and Social Sciences and managed four undergrad TAs.
-
Teaching Assistant at
Brown University (Computer Science Dept)
—
Providence, RI,
2008
- TA'd Virtual Reality Design for Scientific Visualization, including extensive virtual reality software support.
-
Undergraduate Teaching Assistant at
Duke University (Computer Science Dept)
—
Durham, NC,
2004
– 2006- TA'd Software Design, Computer Graphics, Numerical Analysis (grad-level), and Discrete Math. Taught one lecture for Computer Graphics.
Education
-
PhD in Computer Science,
Brown University —
Providence, RI,
2015
-
Dissertation:
A Multi-Scale Model of Brain White-Matter Structure and Its Fitting Method for Diffusion MRI.
Committee: David H. Laidlaw (advisor), Peter J. Basser (NIH), John F. Hughes, and Benjamin J. Raphael.
-
Dissertation:
A Multi-Scale Model of Brain White-Matter Structure and Its Fitting Method for Diffusion MRI.
- ScM in Computer Science, Brown University — Providence, RI, 2008
- B.S. with Distinction in Computer Science, B.S. in Mathematics, Duke University — Durham, NC, 2006
Mentoring
-
Co-Lead Mentor for
Code for Philly —
Philadelphia, PA,
2016
- Mentored a cohort of 12 early-career software developers in the DatJawn project.
- Designed a 20-week curriculum in version control theory, distributed systems, and software development.
-
Academic Mentor at
New Urban Arts —
Providence, RI,
2009
– 2011- Mentored approximately a dozen high-school students in math and science at an open-door urban community art studio.
Skills
Programming and Markup Languages
- Professional: C/C++, Kotlin, Matlab, Python/Numpy, SQL, LaTeX.
- Proficient: Java, compliant HTML, CSS.
- Familiar: GLSL, Make, Bash, Javascript, Go, PHP, Perl, SVG, SuperCollider, Processing.
Software and Libraries
- Professional: Debian/Ubuntu Linux, Mac OS X.
- Proficient: Windows XP, Eclipse, Visual Studio, Photoshop, Inkscape.
- Familiar: OpenGL, JUnit, Git, Subversion, CVS, ClearCase.
Publications & Presentations
Journal Papers
- “Clinical Contributors to Cerebral White Matter Integrity in HIV-Infected Individuals”. Journal of Neurovirology, 17(5):477–486, 2011 .
- “Application of Uncertainty Visualization Methods to Meteorological Trajectories”. Earth Science Informatics, 3(1–2):119–126, June 2010 .
- “Scientific Sketching for Collaborative VR Visualization Design”. IEEE Transactions on Visualization and Computer Graphics, 14(4):835–847, Jul–Aug 2008 .
Refereed Posters, Workshops, and Invited Talks
- “Predicting DTI Tractography Uncertainty from Diffusion-Weighted-Image Noise”. Poster at ISMRM 2012.
- “Application of Uncertainty Visualization Methods to Meteorological Trajectories”. Talk at NASA/AGU Earth and Space Science Informatics Workshop, University of Maryland, Baltimore County. August 2009.
- “A Specialized Inter-Curve Similarity Measure for Agglomerative Diffusion MRI Streamline Clustering”. Invited talk at the NIH Section on Tissue Biophysics and Biomimetics. May 2009.
- “Tradeoffs in Supersampling of DTI Metrics”. Poster at ISMRM 2009.
- “Teaching Science in Virtual Reality with a Freehand 3D Illustration”. Poster at IEEE InfoVis 2007.
Instructional Workshops
- “Regular Expressions, Text Processing, and Web Scraping”, a two-hour Python tutorial for research librarians at The Humanities and Technology Camp, New England at Brown University. October 2012.
- “Fibbly Math Patterns”, a one-hour classroom workshop for elementary- and middle-school–age students. Facilitated ten sessions total in Damariscotta, ME and Philadelphia, PA. November 2011 – January 2013.
- “Diffusion MRI: Theory and Practice”, a three-hour workshop in the Biostatistics Program, Department of Public Health, Brown University. October 2010.