Dashboard Syllabus Start Here Directory

Dev Team

128 Dev Team

We
Help You
Teach.
We
Help You
Learn.
CS128 Dev Team
[email protected]

We help you teach and learn by creating innovative technology to enhance learning, delivered in a way that is unconventional to traditional college lectures.

Low Redundancy: We seek high efficiency in the products. We design products in a way that utilizes our current resources.

User Friendly: Given the fast turnaround of the user target, we design products to be easy and intuitive to use to reduce the learning curve required for our tools.

Examples of our innovative technology include:

Integrated Virtual Office Queue & Documentation System

Enforces fairness of student encounters and consistency in interactions.

Scheduling & Shift Enforcement System

Provides an easy way to schedule staff shifts and enforce attendance.
Internal API efficiently interacts with other products to provide shift-related data, which is used in various ways.

Progress Tracking System

Robust framework to generate and track progress of any sort, and manage them in a single place. This includes automated alert generation, notifying the TA and the student for swift intervention process.

LMS-grade Learning Tool Provider System

Comprehensive LMS-level system that supports various content presentation methods and assessment methods. This includes dynamic learning calendar, lesson overview, multiple choice and short answer questions, coding questions, Github linking, user linking with another learning tool (behaving as a learning tool consumer), all delivered on-demand.

Identity Provider System

Central OAuth2.0 IdP module to manage user information in one place, so that third party (or microservices) can be efficiently linked to user profile, while enforcing access control at the same time without extra effort.

What we do is only possible due to our world-class team members. Most of our team members are/were also full-time software engineers that do other things outside of our team that change the world.

Nathan Park

Nathan is a head developer that started the team.
Nathan oversaw all projects until his tenure ending Spring of 2024.

Adarsh Suresh

Adarsh contributed significantly to the initial stages of our projects.
He has now left the team after graduation.

Yirong Chen

Yirong has contributed significantly to the newer projects and
refactoring/improving old projects.

Julian Schiavo

Julian has contributed to improving our internal communication
procedures as well as our progress tracking system.

Rohit Valmeekam

Rohit is a new member that is contributing to many new projects.

Dear community,

As I am getting ready to end my tenure with CS 128 and the Dev Team, I would like to highlight some of our accomplishments and what set us apart from other teams and traditional college courses.

I started my job with Dr. Nowak even before 128 was offered to the public. My official title then was a course developer. Under the direct supervision of Dr. Nowak, I have built and polished the course system that is innovative and tailored to our own teaching style. This role allowed me the privilege of recruiting and collaborating with exceptionally talented course assistants and development team members. Together, we have created innovative and fun course materials, assessments, and cutting-edge tools that help teachers teach and students learn.

Our technological infrastructure now rivals, and in many cases surpasses, industry standards—not only within the CS education industry but also compared to tech giants. Despite serving a smaller community of students and staff, our achievements stand on par with those of leading tech firms. While we acknowledge the presence of other innovative CS courses, we pride ourselves on being at the forefront, continually pushing the boundaries of what's possible with the resources we have at disposal.

Throughout my four-year tenure, I've witnessed our team members depart with skills that are immensely valuable in the professional world. It's been profoundly rewarding to see them thrive in prestigious companies such as Citadel, Apple, Amazon, Meta, and DRW, applying the knowledge and expertise they acquired with us.

For those inspired to contribute to our legacy, I encourage you to explore the "Join Us" section for further details. Other students, me and my team are glad to have served you these past semesters and many to come.

I invite you all to discover the diverse opportunities available within this course. Whether your interest lies in development or other supportive roles, there's a place for you here to make a meaningful impact. You can find the application process here: https://forms.gle/V7fqrXVQ3eprSZwb9.

If what I said here interests you and you would like to discuss more personally about the opportunities that we can present, I welcome any emails (as well as Dr. Nowak and other senior staff members who can share meaningful experiences working for 128).

With gratitude,
Nate Park

Join us in innovating CS education. You may apply to our team by joining our course as a course or teaching assistant for Professor Nowak's section. More information can be obtained from Professor Nowak. Following skillset is preferred to join our team.

Agile and Fast Paced Environment

All of us are full-time students as well. You must be able to adapt quickly and be able to contribute without significant 1:1 support. You should be able to pick up skills and knowledge quickly.

Collaborative and Communicative

We are a team. We don't have individual contributors, but rather publish all work under our team. You should be able to collaborate with other members of the team and communicate by using constructive discussion-building skills.

Specific Technology Set

While many things can be learned on the job, you will be able to start quickly if you are familar with the following:

Ruby on Rails, Docker, REST API, System API, DBMS and Query Writing, HTML/CSS, Javascript (DOM manipulation included)