I work directly with the Experiential Learning and Assessment Center at the Perelman School of Medicine located at the University of Pennsylvania. “Standardized Patients (SPs) are independent specialists trained to portray patient scenarios for the instruction and assessment of clinical skills of medical students, residents, fellows and other diverse professionals.” [1] SPs were first introduced in medical education in the early 1960s and since then Penn serves more than 2,000 learners each year across multiple professions and at all levels of training. Over the past several years, Penn has expanded their client base beyond human health care, offering programs for diverse fields like veterinary medicine, social work, human resources, customer service and others. My role in the Standardized Patient Program has been to aid in building an SQL database and to create an application to handle department operations, as a replacement for the existing solution systems. We are designing an Enterprise Resource Planning Software (ERP system) that allows staff to schedule and track payment of standardized patient actors.

By the time I joined this program, Penn had already developed, tested, and commercialized this software across the United States. The department I work in is constantly selling the software to other hospitals across the country. Penn also runs a copy of this software at their Perlman Hospital. My job is to work with staff, doctors, trainees, and sp’s to understand and better enhance their workflow through the software. My daily tasks revolve around having meetings to discuss bugs, issues, enhancements, and new features. Then I use my software development skills to develop solutions and manage the production and testing servers.

Every Monday at 1:30 pm I would have a meeting with my superior and co-developer to discuss the priority of issues in the system. We utilize Bitbucket; a version of Git which allowed us to source control the code. The Bitbucket system also connects to our teams Slack (a real time messaging platform) which allows staff to submit tickets, issues, and bug reports to us. We then sort issues by priority every week and tackle as many as we can.

SPMS is a cross platform cloud application that uses MySQL to store data and CakePHP as the Model View Controller (MVC) framework. SPMS is written in Php, Html, CSS (Bootstrap), Python, C, and JavaScript (jQuery). Customers install SPMS to their cloud from Penn and the dependencies through Composer (package manager). The database contains 24 tables and millions of rows of data. We utilize an MVC framework during development so the codebase favors convention over configuration. This means that code has to be written properly and goes through a quality check before merging with the master branch.
As of right now, there are 246 remaining issues in the repository. Issues can be broken down into bugs and enhancements. So far, I have solved 16 issues. A majority of these issues were bugs dealing with the calendar system, the UI for input selection, or cross platform bugs. The last 3 issues I solved were enhancements. An enhancement to the SPMS system is viewed as a plugin for customers. These plugins are generally scripts that can be installed remotely. The scripts we create automate workflow and resource planning in the hospital. Customers install “prebaked enhancements” which are CakePHP modules that add automation to their SPMS instance. I definitely find it more challenging to create enhancements to SPMS, as it requires a lot of tools to create.

My education at Temple University has very much aided me in my work at UPenn. My discrete math class was probably the most helpful class I have taken so far. I used a lot of set theory when extracting data sets from the SPMS database. I had to go back and review unions and joins to understand how to more efficiently extract data in SQL.

[1] Standardized Patient Program. (n.d.). Retrieved from https://www.med.upenn.edu/spprogram/what-is-a-standardized-patient.html