At Threat Stack, I worked as a data engineer fully integrated with one of their development teams. We were tasked with building out event search using real-time streaming/batch processing applications to process billions of events and make them queryable.
On that team, I created the streaming job to pull events from Kafka and to dump it in Elasticsearch to make it searchable. I also had a significant impact on model management and serialization format for the rest of the data platform and was given the opportunity to help build out the API+query language used to interact with the Elasticsearch cluster.
My internship at Threat Stack was by far the most influential experience I've had as a developer. There I learned the fundamentals of being a data engineer, a field I plan to pursue in the future, and found many great mentors.
I joined Talla during the summer between my junior and senior years of high school. Talla Boston startup that builds intelligent Slackbots to manage common HR tasks.
As a part of the dev team, I was given the task to built out a data annotation platform that would allow them to import Slack conversations and rate whether Talla's (their chatbot) response was correct or not and what it should be. This allowed their data scientists to rapidly improve their product and allowed them to outsource data annotation to contractors, speeding up the rate at which they could improve their product.
On the team I participated in their full Agile process, and participated in all their meetings. This gave me great insight into how a small startup of around 20 people worked and how informal management among peers works.
I worked at Nutonian, a startup that developed a general purpose machine learning platform, during the summer before my sophomore year of high school. There I worked as a one of two QA developers. As a result I got a full view into how QA and DevOps worked and their interaction with the wider software development world.
As a QA developer, I built their first performance testing suite which allowed them to track their API performance over time and make sure no one change suddenly bloated the API. I also maintained many fully automated Selenium tests, learning how to develop maintainable automated browser tests and testable websites.
The major hard skills I learned there were Python+PyTest, Selenium, and code testing. I learned even more soft skills like testing a major projects, getting familiar with an entire product's codebase in a short amount of time, and how to write good, testable code.
CloudHealth Technologies was my first software developing job and I worked there for two summers in high school (between eighth grade->freshman year and freshman year->sophomore year). This was a formational experience for me because it gave me my first experience working on a project larger than me and working as part of a team.
While at CloudHealth I focused mainly on bug fixing and adding new features. While this doesn't seem like much in retrospect, at that young age it was a tremendous opportunity for me.
While there I got my first experience working in a team environment, and learning modern software development techniques like Agile and Scrum. This experience has shaped me as a software developer.
I joined my high school’s robotics team during my freshman year of high school, called the Reading Robockets (or Team 4761, the number that FIRST robotics lovingly assigned to us). We were a part of FIRST of FIRST Robotics Competition, a non-profit dedicated to inspiring kids to pursue STEM careers through having them create people sized robots to solve challenges and generally bash into other robots. The catch was that the challenge changed every year and we had an intense six weeks to build a robot to complete it.
I joined as a programmer and decided day one that this was the team for me. After programming the robot the first year, I became the Programming team lead, and brought Scrum, which I had learned at my internships, to my team. We divided our schedule into Sprints and had daily standups. In the end of that season, we went to Worlds, the massive final robotics competition with over five hundred teams and a hockey arena filled with a cheering audience.
After my sophomore year, I was promoted to Technical Project Manager. In this role, I worked as a manager, creating schedules, running daily standups, and keeping the team on track. Having this job was an incredibly valuable experience for me because it gave me a wide understanding of what it takes to run a team and communicate effectively.
Finally in my senior year, I was elected Technical President. As Tech President, I oversaw the team as a whole and worked as the project manager. We faced significant challenges that year with many conflicts between the team leadership and our adult mentors, but in the end it taught me a ton about managing up and working through difficult personal issues with people.
Team 4761 shaped the person I am today. Through the good times and the bad, I grew as a programmer, a leader, and a person. I learned how to work on a large project with a group of 50 people and in the end, how to manage those 50 people and keep them motivated through the ups and downs. The Robockets changed me in ways I'll never forget.