What Have Our GA-CCRI Summer Interns Been Up To?
This blog was written by each intern, sharing what they did this summer as well as interesting parts of their GA-CCRI internship experience. As you can see, our software engineering interns really dove into the code and had a productive summer!
Name: Emily Seibert
Major: Computer Science
School: University of Virginia, 4th Year SEAS
What I Worked On:
This summer I worked primarily on the SPINOZA project. I fixed, updated and developed interfaces in ccri-ui to help display kernel features. This new UI development was used company-wide in multiple demonstrations. Towards the end of my internship, I began working on a data simulator which is used in SPINOZA demonstrations. I will continue to develop and work with its original creator in the coming year.
Biggest Accomplishment:
I developed the entire interface for displaying dynamic features in ccri-ui, which is used daily by multiple project teams. This 4-week-long project included things like transforming geospatial data points into heatmaps using Geoserver and developing on both the back-end and front-end of SPINOZA.
Favorite Part About GA-CCRi:
My absolute favorite thing about working at GA-CCRi (and a primary reason why I’ve completed two internships here) is that interns are treated like full-time employees. I’m not just working on bugs, testing other people’s code, or doing research for the actual full-time employees. I’m getting to actively develop and commit my work. I love and appreciate the amount of responsibility I’ve been given everyday at GA-CCRi.
The focus of my internship this summer was on creating an algorithm to geocode news articles with a high level of spatial granularity. CCRi’s SWIFT (Simple Warning Instant Forecast Tool) requires input event data to have a time, location, and event type to be filtered down by. By using news articles from databases like GDELT (Global Database of Events, Language, and Tone) as events, then resolving the location from a big city down to a street, data input is improved. This causes improved feature extraction in SWIFT, which outputs better threat heat maps. The algorithm developed uses OpenLayers data and Natural Language processing.
Typical Day:
Arrive 9 P.M., then do general housekeeping by checking the calendar, emails, and company chat. Go to morning standup at 9:30 with the team and share what I’ve accomplished in the last two days and what I’m going to do next. Work until going out to lunch with co-workers, or getting food delivered by the daily “lunch hero”. Continue working till 5:30 or 6 p.m., making sure to take intermittent ping-pong breaks.
Favorite Part Of The Internship:
My favoirte part was working on one open ended and difficult problem all summer long. It made me feel like a researcher!
Name: John Reagan
Major: Computer Science
School: University of Virginia, 3rd Year SEAS
What I Worked On:
I spent my summer creating a new user interface for GA-CCRi’s Arpeggio project, which is an analytics and visualization suite. The original implementation was in Ext.js, and the visualizations were divided in such a way that make comparisons between them was difficult. The new version, which uses AngularJS, has a unified interface that makes comparing data sets a breeze. It also includes a profile system that allows users to save their favorite configurations of visualizations and filters.
Technologies Worked On:
I mostly utilized front-end JavaScript libraries and frameworks, including AngularJS, Moment.js, d3.js, Lo-Dash, and GA-CCRi’s very own Sonic.js. I also worked with a few back-end technologies, including PostgreSQL, Scalatra, and JOOQ.
Favorite Part About GA-CCRi:
More than anything, I appreciated the autonomy and respect I had at GA-CCRi. My hours were flexible, I was expected to track my own work, and I was treated like any other employee. This wasn’t a canned internship program. I was doing real work for real customers from day one.
Name: Julia Hoffer
Major: Computer Science
School: University of Virginia, 4th Year SEAS
What I Worked On:
For the duration of the summer, I was working on a project called CBMEN (Content Based Mobile Edge Networking). One of the main things I worked on was changing existing code responsible for coordinating network fetch operations to be more efficient and use fewer threads. In addition, I debugged problems, reviewed code, or searched through logs to determine the reason for unexpected behavior in testing scenarios.
Biggest Accomplishment:
My biggest accomplishment of the summer was implementing a cache to store metadata. This helped to improve performance on various testing scenarios by decreasing the number of times disk had to be accessed to retrieve metadata.
Most Interesting Thing I Learned:
I learned a lot about threading and how to avoid concurrency problems . I had no idea how challenging (and fun) it can be to think about potential synchronization problems in your code.
Name: Robbie Hott
Major: Computer Science, PhD Candidate
School: University of Virginia
What I Worked On: CBMEN (Content Based Mobile Edge Networking)
Technologies You Worked With:
Android, Python and Shell scripting, Pyplot
Most Interesting Thing You Learned:
On the hackerish side of things, I really enjoyed learning some of the strange sides of git version control, including rebasing and history rewriting.
Favorite Part About GA-CCRi:
The relaxed atmosphere and great mentors. I felt that I had partial ownership of the project and code, that I was working on significant portions of the project, and that I was a full member of the team.
Typical Day as an Intern:
Our team worked mainly in the same room for the duration of the summer. We would greet each other as we started work in the morning. During the day, we could just lean over and start a discussion: asking a question or for a code review. That built cohesion and shared ideas among the group and led to a more relaxed and comfortable environment.