Welcome!

Thanks for dropping by! Something's gone wrong internally- I'll have this fixed in a day or two. Sorry for the inconvenience!

Hi there!

Welcome! I'm Sam Paniccia, and I am a third-year student at Northeastern University studying Computer Engineering/Computer Science and minoring in Music. Feel free to take a look at my projects and hobbies by either scrolling down or using the tabs above!

I'm the enthusiastic-looking one with the tambourine on the right :)

Welcome! I'm Sam Paniccia, and I am a third-year student at Northeastern University studying Computer Engineering/Computer Science and minoring in Music. Feel free to take a look at my projects and hobbies by either scrolling down or using the tabs above!

That's me, on the right! (Well, not yet...)
this is a hackish workaround... how do i get around this?

About Me

I knew I was going to be an engineer all my life. I've always had a strong interest in the world around me, and I love solving problems and applying what I've learned to the real world. In my senior year of high school, I also discovered a love for designing and implementing programs, and voilà, a CE/CS major was born. Ever since then, I've always been tinkering away with personal projects on both the hardware and software side. Some of the more recent and major ones are below and on my GitHub page!

Here's me holding a stuffed animal sloth. His name is Kurtis.

A Solidworks rendering of the MIDI drum pad I co-created (see the My Projects section below for more!)

When I'm not in class or doing computery things, I spend most of my time either playing or listening to music. I've been a musician all my life, and music is essential to me. I've been an avid percussionist for over 15 years, and I've performed everywhere from my high school auditorium to Main Street at Disney World in Florida. In my senior year of high school, I performed an 8-minute long marimba duet with a close friend of mine, and this fostered my love for pitched instruments. In the following years I've self-taught guitar, bass guitar, and piano, learning from and jamming with my roommates and friends. And all the while, I've continued to study and perform (and compose for) percussion. I'm thrilled to have found such a rich musical environment at school!

Aside from performing, I also love listening to all types of music. My favorite genres are classic rock, blues, funk, and jazz, but I enjoy pretty much anything: some of the less standard music I enjoy ranges from Organ Freeman (no, not Morgan, but Organ) to Mongolian throat-singing music (it provides a really good working ambiance). My all-time favorite musicians and groups are Jacob Collier, Snarky Puppy, Vulfpeck, Vince Guaraldi, and Pink Floyd.

Hi, phone/tablet user!

Currently there is no available mobile version of this site. Please view on a computer to see what I'm up to!

this is a hackish workaround... how do i get around this?

Previous Coops

Doble Engineering - June-December, 2019

Position Held: Hardware/Embedded Engineer

For my second coop at Doble, I expanded upon my previous role on the Hardware team and worked much closer with the embedded firmware that the hardware ran. I continued to work on the same F-series product as in my previous coop and in my part-time work. Most of my time was spent architecting and implementing a sophisticated Remote Procedure Call (further expressed as RPC) interface that permitted outside applications to invoke function calls concerning particular hardware modules through the firmware messaging stack. Function invocations are delivered in the form of a Google Flatbuffer message; the firmware receives the serialized message, parses it into meaningful data, parameterizes any given parameters from arrays of bytes into C++ types, invokes the desired function, and returns any related data as another Flatbuffer message. Each message may contain an arbitrary number of function calls, and return values per function call are easily retrievable.

The calls are typesafe and efficient: the platform outperforms a previous RPC implementation by hefty margins, especially as the number of calls per message increases. Any object representable in JSON is supported as either a function parameter or return value.

In addition to the RPC capability, I also diagnosed and reworked a slowdown in inter-module communication through I2C, increasing throughput by 90%.

Finally, I continued my internal tool development, working further with C# WPF to enhance the Windows applications that the firmware and hardware teams use to communicate with hardware.

Skills Learned:
  • - Remote Procedure Calls: How they Work and How to Use Them
  • - Complex C++ Constructs:
    • + Thread Safety: Mutexes, Atomics, and Condition Variables
    • + Exception Safety: noexcept and Exception-Free Promises
    • + Dynamic Memory Management: Dumb and Smart Pointers
    • + Language Semantics: Copy and Move
  • - Dynamic Code Generation through Python (and Cheetah)
  • - Asynchronous Messaging Strategies
Languages Used:
  • - C++
  • - Python
  • - C#
Technical Resources Used:
  • - Google Flatbuffer Serialization
  • - Cheetah Python Template Engine

Doble Engineering - June-December, 2018

And Part-Time Employment while in Classes: January-June, 2019
Skills Learned:
  • - Circuit Design
  • - PCB Design
  • - Script Development, Optimization, Integration
  • - Test Suite Development
  • - GUI and Front-End Development
  • - Data Serialization and JSON Usage
  • - I2C Communication
Languages Used:
  • - C#
  • - Python
  • - C++
Technical Resources Used:
  • - Google Flatbuffer Serialization
  • - Selenium web browser automation (in Python)
  • - EAGLE and easyeda PCB design software
Position Held: Hardware/Embedded Engineer

I was based on the Computer Hardware team at Doble, and many of my tasks regarded one of Doble's products in their F series. I got to work hand-in-hand with the other engineers on the team, learning about realistic circuit design where the imperfections of the real world play a significant roll in how products are constructed. In addition, I worked heavily on improving and expanding several internal tools, both front-end and back-end.

I also spent some time on the embedded software team, where I helped design and implement some lower-level procedures involving data serialization and transmission. I really enjoyed being able to contribute to a project from both the software and hardware perspective.

Finally, I spent some time working on test scripts with the SQA department. The scripts, written in Python and using the Selenium browser automation package, confirmed proper website functionality through mock button presses, search queries, and other user interactions. This experience taught me how to write cohesive, comprehensive tests that cover all edge cases and ensure that a product is working correctly.

My Projects

My programming projects are most easily viewable on my GitHub profile.

  • What have I been up to?

  • Music-Responsive LED Array, colored by a Teensy arrow_forward
  • Hexdungeon (a game featuring a custom event loop, in C++) arrow_forward
  • Ssh Backup (a directory remote backup utility, in C# WPF) arrow_forward
  • MIDI Drum Pad (a from-scratch, Teensy-powered drum pad!) arrow_forward
  • This website! (custom HTML/CSS, a bit of JS) arrow_forward
this is a hackish workaround... how do i get around this?

Kerr Hall Compositions

Kerr Hall Compositions is an independent composing organization co-founded by myself and Joshua Berlin.

At the beginning of the spring semester of 2017, the conductor of the Northeastern Wind Ensemble held a chamber concert, and the percussion section had nothing to play. With the concert just a few weeks away, we had to find a piece to play.

But we found nothing. All of the pieces we found for five players were either boring, cliché, or just not good.

So we decided to write something of our own. In February of 2017, fellow Wind Ensemble percussionist Joshua Berlin and I decided to compose a piece for percussion quintet to perform at the concert. I'd never composed before, but Josh convinced me to give it a try.

We're still composing today.

If you're interested in our work, please visit the Kerr Hall Compositions website.