top of page
  • Writer's pictureThe Rivers School

Finn Cahill ’24: Jackpine Technologies

During my junior year at Rivers, I took computer science with Mr. Schlenker and didn’t really know what to expect. I’m grateful that I did though, because I exposed myself to the world of computer science, where I found that there is so much to learn. I was truly privileged to have the opportunity to continue learning computer science this summer through an internship with Mr. Peter Walsh at Jackpine Technologies.

I was able to learn about a wide variety of topics over the summer. I started with training on preventing insider threats and handling classified information safely. After that, I learned about Jackpine as a company, and what services they provide, including their main product called CONS3RT. CONS3RT is a product that automates a company's existence in the cloud, providing continuous and accessible development, testing, and integration in the cloud. The United States Department of Defense is among Jackpine’s clients that use CONS3RT. In addition to presenting about the company’s products, my coworkers also presented on other topics to educate other interns and me. For example, I learned about Burp scans, which are used to find vulnerabilities within a web application. Basically, the scan crawls through the web application, taking every possible route through it, in order to find anything that is possible to exploit. This helps Jackpine improve the security of their web applications, therefore protecting their services from hackers. During our daily scrum meetings as a company, I would listen to the input from the separate teams at Jackpine, and what things they are dealing with in their work. Although I didn’t always know what they were talking about, I tried my best to understand the basics of whatever issue or topic was being discussed and found that I was able to understand more and more as the summer progressed.

I spent the majority of my time on two separate projects. The first project involved sending automated messages, called zaps, into a Slack channel based on available updates to a certain service. For example, Jackpine uses GitLab to develop their code, so whenever GitLab releases a new update, Jackpine wants to know. So, these zaps are checking if there is a new release on GitLab’s website, and automatically creates a message containing the contents of the update, and posts it to Slack so Jackpine employees can see it.

Example of Slack message posted from zaps

Some of the zaps had multiple steps to them and required a Python script to create a message based on the information in the update. Other times, however, all the zap had to do was post a link to the Twitter post that announced the update. Some of these zaps were already made before I got there, but many of them had broken and required updates in order to have them run again.

The second project that I worked on gave me insight into how traffic runs through a server and an operating system. The overall purpose was to create some sort of display that would run periodically and fully automatically and show the amount and type of traffic through the server. From my computer, I connected to the system which contained Raspberry Pi’s, which are basically small and basic computers, through a Secure Shell (SSH) connection.

System with four Raspberry Pis and four BeagleBones

Now, I needed to tell the system which Raspberry Pi I wanted to connect to by which port it was connected to. Once I tell the system which port, my computer connects to the IP address of that Pi. That happened because, from the original IP address of the system, it forwards based on the port of the Pi. In addition to that, the admin team set me up with a VPN (Virtual Private Network) so that I can access the system and the Pi's from home. One of the Raspberry Pi’s on the system had a Unicorn Hat attachment, which is a grid of LEDs. Once connected to this Pi, I could run Python scripts to make the grid light up in certain ways or patterns. Some scripts are very simple, making the board light up a solid color and then switching off, while some scripts are much more complicated, like making an image appear to be doing circles while traveling in and out of frame.

Raspberry Pi with Unicorn Hat running a script to show a rainbow

This project also required me to familiarize myself with the terminal of my computer, which is where everything in this project is done. This is where you SSH into the Raspberry Pi, and this is also where you write and run the Python scripts. I had to learn how to navigate the terminal with many commands in order to successfully accomplish the task of creating and running a script on the Unicorn Hat.

Throughout the summer, I have garnered an extensive amount of knowledge that I look forward to applying throughout my time in computer science. Being able to listen to my coworkers at Jackpine is a valuable experience that I will certainly remember and not take for granted. Seeing the way that my coworkers spoke about their work in a professional manner set a great example for how to be an effective member of a team at a company. Thank you to everyone at Jackpine for creating a positive experience for me, and especially thank you to Mr. Walsh and Mr. Schlenker for making this internship a possibility.

bottom of page