Professional Experience

Lead Software Engineer and Architect — 1 year (Oct 2019-Present) — The LZ Dark Matter Experiment — Rochester, NY

LUX-Zeplin (LZ) is a next generation dark matter experiment, selected as one of three ‘G2’ (for Generation 2) dark matter experiments. Composed of many areas of engineering, this particular responsibility involved the data acquistion systems of experiment, known as the “online” system.

  • Planned, designed, and implemented the Run Control system, and its various subsystems used for experiment control, and data acquisition.

  • Develop full-stack application interface for Run Control using modern frameworks and tools for experiment interaction and control.

  • Using collaborative software practices with an international team, and implementing code using C, C++, Python, shell on Linux-based architectures. Heavy use of the ICE RPC framework.

Software Engineer — 2 years (Oct 2017-Oct 2019) — SkuTek Instrumentation — Rochester, NY

Designed, and engineered a new data acquisition network communication software layer using Linux, C and Python, running on an instrument designed on a custom Beaglebone implementation intended for Physics research.

  • Simplified, and improved the robustness and flexibility of data communication over previous versions of the device software.

  • Heavily used FPGA, SPI, and GPIO technologies to communication with a digitizer through the Linux kernel programming interfaces.

  • Architected a new communication protocol using the ZeroMQ library.

  • Code was written in C, Python, and Bash shell, and managed under Git.

Adjunct Professor — 6 years (Jan 2015-Present) — University of Rochester — Rochester, NY

Fulfilled adjunct professorial duties to the Computer Science department by teaching undergraduate students on the topic of introductory programming and computer science using the Python programming language (CSC 161) and data structures and algorithms (CSC 162).

  • Instructed over 150 students multiple times a year through weekly lectures, exams, quizzes and personal instruction.

  • Managed teaching assistants on grading and student interaction, as well as direction of their other job responsibilities.

  • Provided management to student workshop leaders in their pedagogical duties when running weekly workshop sessions. Oversaw workshop leaders on grading and their other workshop duties.

Lead Programmer/Analyst — 12 years (May 2009-Sep 2020) — University of Rochester — Rochester, NY

Supported the department of Physics & Astronomy consisting of 250 people, including 75 faculty and researchers and 100+ graduate students. Installed, configured and maintained a server infrastructure that provided network services supporting the department. Configured, diagnosed and repaired Mac, Windows, and Linux systems. Trained faculty, staff, and students one-on-one and in groups on topics such as Linux, programming, software design, or general application usage.

  • Developed system management tools using Python, C, and PHP.

  • Managed student employees in day-to-day operations.

  • Migrated 24 bare metal Linux servers to a high availability virtualization architecture using Linux KVM, Heartbeat, and Docker.

  • Architected an innovative Linux netbooting system (unionroot) for instantly deploying PC Workstations with Ubuntu Linux.

    • Seamless live updates to a heterogeneous mix of netbooted PCs of varying configurations.

    • Coherent, consistent end user experience on every workstation through a standardized environment.

    • An extensible environment allowing for regular, methodical enhancement of core features.

    • Reduced security management time using simplified security auditing capabilities of union file systems.

    • Focused project simplicity of design and use.

  • Spearheaded the implementation of an enhanced multilayer security framework, and policy that provided authorized and secure access to departmental computer resources.

    • Regularly audited system security and analyzed compromised hosts.

    • Trained users on safe internet practices and how to secure workstations and servers.

    • Implemented ITAR compliant data storage and access.

Senior Programmer/Analyst — 10 years (May 2000-Jul 2009) — University of Rochester — Rochester, NY

Supported an Astronomy research group consisting of faculty researchers and graduate students with specialized software development abilities in near infrared detector research. Additionally, performed in a sysadmin role by providing desktop, server, and data management for the research group.

  • Administered specialized research systems based on FORTH, C, and Python.

    • Developed specialized project software and integrated it with Linux.

    • Documented and managed source code for research projects.

  • Coded an astronomical image viewer and data analysis tool, MacDV, for the Apple OS X platform.

  • Interconnected a heterogeneous network of workstations and servers using LDAP, NFS, DHCP under Red Hat and Gentoo Linux to maintain a consistent user experience and minimize administrative issues.

Lead Programmer — 2 years (Dec 2005-Jul 2007) — Fermilab — Chicago, IL

Engineered and implemented a scalable, highly parallel, high-throughput particle physics event data logger that significantly improved data acquisition from the CDF detector during its Run II phase.

  • Achieved 125% of target throughput enabling 100 MB/s write speeds in the event logging pipeline.

  • Guided a remote development team in defining the testing methodology and upgrade path for software implementation

  • Surpassed original project performance goals and set a software architectural example for similar project at CERN.

Co-Founder — 4 years (Dec 2003-Mar 2007) — If Then — Rochester, NY

Conceptualized and prototyped an early implementation of a Wi-Fi captive portal hotspot called “Abydos”. Lead a team in the creation of a wireless captive-portal device based on this prototype using C, Python and FreeBSD.

  • Decided to use a low-cost, low-power single-board computer, running an embedded FreeBSD installation.

  • Unique feature-set included timed access, and enforced captivity of unauthorized users.

  • Developed a ground-up implementation of a Python-based ipfw firewall module for manipulating firewall rules programmatically.

  • Managed web, mail and shell hosting services on FreeBSD servers.

  • Oversaw developers and consultants involved with the product design and deployment.