top of page
  • Writer's pictureThe Rivers School

Madison Ngai ’25 - Pegasystems








When my parents signed me up for a coding camp in elementary school, I felt that it was the last thing I wanted to spend two weeks of my summer doing. Although I initially approached the camp begrudgingly, I’m now grateful that I was forced to go because it gave me a glimpse of what the world of computer science looks like. Eight years later, I was given the opportunity to learn how computer science is applied in businesses through an internship at Pegasystems.


Before my five-week internship began, I learned about what Pega does and how other companies use their services. This preparation helped me understand more about how my team contributes to the business. See Matt Papas’ blog for more details on what Pega does as a company.


I spent the majority of my time working on developing a Webex chatbot. I hadn’t used many of the resources that my team uses to code, so it was a huge learning curve to familiarize myself with them. I learned how to use the terminal to upload code into a zip file and push the code to Bitbucket so other team members can have access to it. I made a lambda function and an API key through Amazon Web Service(AWS). One of the most important parts of this was being able to use Webex Developer to research in the Full API Reference. Although coding is a lot of just writing code, I had to do lots of research to figure out how to fix some obscure bugs in the code, how to get the correctly updated software downloaded in the terminal, and sometimes, simply how to write a line of code to get it to function the way I want. The process includes a lot of testing and rewriting.

My function in AWS where the code is uploaded and deployed
The chatbot's main code
The steps to push the code in the terminal

Once I was satisfied with the code I had written, I had to “commit” my changes. From there, I was able to “push” them up the branch and create a pull request. I wrote my code on a separate branch, so my manager, Nick, was able to merge them into the main branch.






A visualization of the different branches in Bitbucket.


An Octopodes weekly grooming

Every day at 10:30 a.m. we had a standup meeting. The purpose of a standup is for everyone to talk about what they have done since the last meeting and what they’re attempting to accomplish that day. It’s supposed to be quick as if everyone was standing, so they could get through everyone without becoming tired. After our standup we had a parking lot session, where different complaints and bugs were talked about. To stay on track with different tasks, the team members work on individual “stories”. Each story is assigned a certain number of points, which correlate to how many days they’re estimated to complete. We also had weekly groomings to make sure everyone was moving along with their stories, and to discuss anything new that needed to be worked on.



Every two weeks we would have a sprint review. During this meeting, developers on my team would demo their completed stories, going through the description, acceptance criteria, and an example of how it’s used. Throughout my time on the team, we had two sprint reviews and I gave three demos. The first was to create a simple Webex chatbot using the Webex Teams SDK; I had to utilize the AWS lambdas to deploy the chatbot. The second was to code help, create space, and delete space commands for the chatbot. This proved to be a lot more difficult than I thought it would be. Although I took computer science during my junior year, I didn’t know how to write SDK’s in code. My third story was to write automated tests as unittests, which have to be written for every single method used in the main code.

An example I used for my 2nd demo










Pega has many coffee break chats for the interns while we’re working here. Led by a keynote speaker, we hear about different roles from different perspectives. My two favorites were one that we had with Ken Stillwell, the CFO, and another one with Alan Trefler, the CEO. During these meetings, the Waltham interns were able to connect with the Poland interns. This was cool to see how far the global impact of the company goes. All of the interns here also went on a volunteer day trip to Thompson Island. We got to know each other better and help our community.



The Pega summer interns (not all pictured)

By the end of my five weeks, I learned so many different tools that can help me in the future, and I gained experience in a hybrid corporate world. I also learned the importance of reserving your workspace(desk) ahead of time, so when you show up you’re not surprised when someone random with a suitcase is sitting there taking work calls. Thank you so much to everyone at Pegasystems and Octopodes and to Will and Nick for helping me throughout the whole learning process, and to Taylor Schifino and Mr. Schlenker for making this internship possible!


Comments


bottom of page