Saniyah Shaikh

Computer Science Student & Developer

About Me

I am an engineering student at the University of Pennsylvania pursuing a BSE in Computer Science. I am currently an engineering research assistant for a project on self-driving vehicles at the Center for Injury Research and Prevention, and a Teaching Assistant for CIS 350. In my free time, I enjoy biking, swimming, traveling, and baking. Explore this website to find out more about my experience, research and interests!

View My LinkedIn

My Skills

Java 90%
Python 85%
Android Development 75%
HTML/CSS/JavaScript 70%


Check out some of my recent projects.

Home Screen of When2Meet for Android

When2Meet Mobile
Android & Java; CIS 350
completed Apr 2018

As part of CIS 350: Software Engineering & design, I worked with a team of three other students to develop an Android app version of when2meet, a web app often used to schedule meetings by finding a common period of availability in a group of people. We used Firebase to store the meeting data and Google Auth to sign in users to the app.

View Project
Recipe Finder GUI

Recipe Finder
Python, HTML, CSS, Flask; PennApps XVII
in progress, started Jan 2018

This project was inspired because Food Network is sometimes hard to search for new recipes when looking for something with specific ingredients. With Recipe Finder, users can add the ingredients they have available and their quantities to the web app. Then, they can filter recipes based on ingredients and deviation (number of ingredients not in the Pantry that a recipe may have), tags, number of ingredients, difficulty level, time, active time, etc. The main tool I used for this project was web scraping with Beautiful Soup in Python. In the future, I plan to add more filtering abilities, use a database, add images of the recipes, and make adding ingredients easier.

View Project
Sudoku GUI

Haskell; CIS 552
completed, Dec 2017

The overall goal of this partner project was to create Sudoku playing and solving libraries in Haskell for the CIS 552 (Advanced Programming, Haskell) Final Project. To achieve this goal, we created four main functionalities: board generation, game play, game solver, and graphics. The game solver was implemented using inference with the AC-3 algorithm and backtracking (using a modified DFS algorithm) to create a solved board. Then, cells are removed from the solved board to create a game board of a specific difficulty. I mostly worked on the graphical interface for this project, which was implemented using the gloss package in Haskell. My GUI allows a player to select a mode and then click a cell and press a key to provide an integer input to the cell. The game ends once the cell is solved by the player, and then they can choose to play a new game.

View Project
Neural Net Output

Neural Nets
Python; N/A
in progress, started Sept 2017

During COGS 001, the professor spoke a little about neural networks. In particular, We learned about the linear perceptron model and 0-1 loss functions. To help me understand the model and see what it could do, I decided to code this model in Python. I ended up creating two neurons following the linear perceptron model, one that enable addition, and one that enables subtraction. Above, the program has printed the weights of the two inputs on each neuron followed by some test inputs and the result. In the future, I will explore the machine learning capabilities of packages like scikit learn and see what else I can do.

View Project
Sentimentex GUI

Python, HTML, CSS, Flask; PennApps XVI
created, Sept 2017

Sentimentex is a web app that uses machine learning and natural language processing to determine the emotions present in a given text. It uses Google Cloud ML and Natural Language Processing (nltk), with Machine Learning through sci-kit learn (SVMs, Random Forest, and Logistic Regression models). It can recognize seven different emotions, including anger, joy, disgust, and sadness, and determines what percentage of each emotion is present in the text. It was influenced by those who have Asperger’s that cannot discern the emotions in text easily and was created with a team of two other hackers during PennApps. I worked on web-scraping & feature extraction for this project by scraping an online thesaurus for synonyms related to each of the emotions and creating a function to assign a value for each emotion based on how many related synonyms to that emotion are in the input text.

View Project
Paint GUI

OCaml; CIS 120
completed, Nov 2016

For the final OCaml homework of CIS 120, we had to make the MS paint application. As part of this project, I implemented the ability to draw lines and ellipses by clicking and dragging, and the ability to draw a point or bunch of points by clicking. I also added a checkbox widget and a slider to change the thickness of the pen when drawing the shapes.

View Project


Here's what I've done for the companies & organizations I am passionate about.

CIS 350

CIS 350 Teaching Assistant
Teaching, Grading, Debugging

CIS 350, Software Design & Engineering, is an advanced programming course at Penn which introduces the tools, processes, and techniques that are used by professional software engineers to create high quality software. A main focus of the course is a semester long group project which teaches collaboration and debugging skills through app development. As a TA, my responsibilities include: grading homework & answering student questions during office hours and online.

Read More
CIRP Self-Driving Simulator

CIRP Self-Driving Research
Programming, Data Analysis, Technical Writing

I am currently working on the third year of a research study about kids using highly autonomous vehicles, and on the second year of research concerning safety during a transition from autonomous to manual control of vehicle. I program scenarios into the simulator in JavaScript, assist with testing & trials, and write data processing code in Python. I have also co-authored academic papers and presented my work at the 2018 AAAM Student Symposium.

Read More

Visiting Mountain View

Google Engineering Practicum Intern
Website & Android Development

As an EP intern on a mobile testing team in New York, I created an internal web application for testing mobile ads which greatly reduces the complexity of adding tests and provides a more understandable GUI for users. The project was completed using Google App Engine, Python, HTML, CSS, Jinja, Flask, and Firebase, and then I integrated the web app with an existing Android app. I also had a lot of fun in the city, including visiting Coney Island and seeing two shows on Broadway!

Read More
WiCS Mentorship Event

WiCS Mentorship Committee
Organization, Mentorship

The WiCS Mentorship Committee is in charge of connecting freshman and sophomores with upperclasswomen in computer science and related fields to advise & support them in their first semesters at Penn. I help to organize fun events for the mentors and mentees, and I also mentor students myself.

Read More
ILURS Keynote

ILURS Director of Technology, 2018
Website & App Development, SEO

The Ivy League Undergraduate Research Symposium (ILURS) promotes undergraduate research and facilitates a community of researchers across the Ivy League. Last year, I helped to design and code our website. As Director of Technology this year, I oversaw the creation of a digital Journal along with Android and iOS apps to guide attendees through their symposium experience.

Read More
CIS 120 Office Hours

CIS 120 Teaching Assistant
Teaching, Grading, Debugging

CIS 120 is an intro programming course at Penn which covers basic GUIs, data structures, code design and style while teaching the Java and OCaml programming languages. As a TA for three semesters, my responsibilities included: co-teaching a recitation section, grading homework, and answering student questions during office hours, review sessions, and in an online forum. In my last semester, I was an office hours TA.

Read More
Monte Carlo Tree Search visualized on drones

ATRC Summer Internship
Programming, Research, Presentation

The Automated Target Research Center is a research group under the Air Force Research Laboratory which focuses on targeting, sensing, and high performance computing research. I interned with the center for two summers. As a Wright Scholar during Summer 2016, I integrated 3D models from drone imaging into Google Earth & converted them to a military format. During Summer 2017, I worked on a project inspired by DeepMind's AlphaGo by implementing the Monte Carlo Tree Search algorithm using Python, adding heuristics to the algorithm, and creating a simulation of drone swarming using it.

Read More
AdamBots Meet Grant Imahara at Worlds

FRC Involvement
Marketing, Programming, Web Dev, Social Media

In high school, I was very involved with my robotics team, FRC #245 the AdamBots. I was on three subteams and attended the World Championship in St. Louis in April 2015 & 2016. As Marketing & Outreach Subteam Captain for 2016 FIRST Season, I led the organization and presentation of our third annual Meet the AdamBots and Cyber Cats Event, which gives sponsors, parents, and prospective members an opportunity to see the AdamBots building our robot and hear more about how our team works. I also created and updated pages on the AdamBots website, was the editor of a monthly newsletter for sponsors and parents, wrote blog posts and manage social media accounts, and worked on programming autonomous portion of robot motion as part of the Digital Media and Programming subteams. After graduation, I have stayed involved with FIRST by volunteering as a referee and judge at the FLL championships held at Penn.

Read More
BPA 2016 Group Picture at States

Business Professionals of America
Programming, Organization, Presentation

Business Professionals of America is a career and technical student organization that supports business and information technology educators by offering co-curricular exercises based on national standards. I was involved with this club all four years of high school, eventually becoming Vice President of my school chapter in my senior year. It was my introduction to programming: I competed in Visual Basic Programming for three years at the regional and state level, placing in the top ten statewide twice. As Chapter Vice President, I organized the 2016 Regional Leadership Conference for our district, organized a coat drive to benefit One Warm Coat as part of the state service project, and was a voting delegate to the 2016 State Leadership Conference.

Read More


Here's what I enjoy doing in my free time.

At the Great Wall


I love traveling to different cities around the world to experience different cultures. Some of my favorite trips include visiting the Eiffel Tower in France, the Colosseum in Italy, and the London Eye in England, as well as ziplining in Jamaica. Most recently, I traveled to Shanghai and Beijing in China over spring break as part of a Penn Global Seminar.

Biking on Mackinac Island

Biking & Swimming

My favorite ways of staying active include biking and swimming. In the summer, my family usually goes to Mackinac Island to do the 8 mile bike ride around the island and enjoy some fudge!

Biking on Mackinac Island


I love to bake! Some of my favorite things to bake include chocolate orange cookies, walnut brownies, caramel brownies, and fruitcake.