Skip to content

Commit

Permalink
Update index.html
Browse files Browse the repository at this point in the history
  • Loading branch information
b-joel-gonzalez authored Jan 10, 2025
1 parent 89a955f commit fd0fb9c
Showing 1 changed file with 31 additions and 45 deletions.
76 changes: 31 additions & 45 deletions index.html
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@ <h1 class="mb-0">
<section class="resume-section" id="research">
<div class="resume-section-content">
<h2 class="mb-5">Research</h2>
<p> As a graduate student, I've focused on electronics engineering and novel device research. For my doctoral program at CMU, I am advised by <a href="https://www.ece.cmu.edu/directory/bios/carley-rick.html">Professor Rick Carley</a> of the ECE Department, where I am focusing on integrated systems design and device fabrication.</p>
<p> As a graduate student, I've focused on microfabrication techniques and novel device research. For my doctoral program at CMU, I am advised by <a href="https://www.ece.cmu.edu/directory/bios/carley-rick.html">Professor Rick Carley</a> of the ECE Department, where I am focusing on integrated systems design and device fabrication.</p>

<p> I joined CMU's Hacker Fab at its inception in January 2023. Our lab aims to create low cost, open-source hardware and software to fabricate integrated circuits, allowing for rapid prototyping and testing of chips. Feel free to check out <a href="https://hackerfab.ece.cmu.edu/">our website</a> for more information on our work!</p>

Expand All @@ -75,89 +75,75 @@ <h2 class="mb-5">Research</h2>
<section class="resume-section" id="teaching">
<div class="resume-section-content">
<h2 class="mb-5">Teaching</h2>
<p>Teaching is a passion of mine that I've always had. I began as a tutor back in my high school days for a few different subjects, which I then carried into my time at UPenn. In my first three undergraduate years, I worked as a peer tutor for various subjects, from calculus to computer systems to electromagnetism. But it wasn't until my fourth undergraduate year that I got the opportunity to become a teaching assistant for an introductory computer systems course. </p>

<p>Since then, I've had the great fortune to TA a number of courses in electrical engineering and computer science at UPenn. I've held office hours + recitations + lab sessions + lectures, developed course labs + projects + curricula, mentored students on projects, and more. Further below is a list of those courses, with semesters as head TA denoted with * and semesters online denoted with ^. </p>
<p>Teaching is a passion of mine that I've always had. I've had the great fortune to TA a number of courses in electrical engineering, computer engineering, and computer science at UPenn and CMU. Below is a list of those courses, with semesters as head TA denoted with *. </p>

<p>Additionally, I'm honored to have been inducted into the <a href="https://www.cis.upenn.edu/ta-information/ta-hall-of-fame/">CIS TA Hall of Fame</a> in Spring 2020. I aspire to continue teaching in the future, hopefully taking up a lecturing position as a professor after I complete my PhD. I've particularly enjoyed helping run lab courses - guiding students in learning how to do lab work themselves is an engaging, rewarding experience. Here's to many more years in teaching! </p>

<div class="d-flex flex-column flex-md-row justify-content-between mb-5">
<div class="flex-grow-1">
<h3 class="mb-0">Introduction to Computer Systems</h3>
<div class="subheading mb-3">CIS240/CIT593</div>
<p>An introductory course on computer systems. Students learn the bottom-up fundamentals of modern computers, from CMOS transistor circuits to digital logic basics. Once they understand how datapaths and ISAs work, they switch to a top-down view and work in assembly and C to build their understanding of an operating system. </p>
<h3 class="mb-0">CMU - RF Systems</h3>
<div class="subheading mb-3">18-427/727</div>
<p> A lab-focused course covering a variety of topics in RF engineering, including but not limited to: basic electromagnetics, transmission lines, antenna theory, transmitter/receiver architectures, modulation schemes, signal metrics, information theory, MIMO. By the end of the course, students are prepared to explore further topics in RF engineering from circuits to systems and more. </p>

<p> Course projects include writing a basic user/OS program in LC-4 assembly (an educational programming language similar to LC-3) and writing a disassembler and a compiler in C. </p>
<p> I've worked with the instructors to build the labs for the course from scratch, with an emphasis on using low-cost RF hardware so that the course may be more easily replicated at other universities. The labs familiarize students with tools such as RF hardware such as VNAs (vector network analyzers) and SDRs (software-defined radios), PCB design tools such as KiCAD, and software such as Ansys HFSS and GNU Radio. </p>

<p> More course information can be found <a href="https://courses.ece.cmu.edu/18727">here</a>. It has been offered every Fall semester since 2022. </p>

CIS240 (Fall/Spring) is the undergraduate version while <a href="https://www.seas.upenn.edu/~cit593/">CIT593 (Summer)</a> is the graduate version, but they shared the same course material. </p>
</div>
<div class="flex-shrink-0"><span class="text-primary">Fall 2018, Spring 2019, Summer 2019^</span></div>
<div class="flex-shrink-0"><span class="text-primary">Fall 2022*, Fall 2023*, Fall 2024*</span></div>
</div>

<div class="d-flex flex-column flex-md-row justify-content-between mb-5">
<div class="flex-grow-1">
<h3 class="mb-0">Operating Systems</h3>
<div class="subheading mb-3">CIS380/CIS548/CIT595</div>
<p>A project course on operating systems. This course builds upon the latter concepts introduced in CIS240/CIT593. Students learn about the basics of an operating system, including process management, system calls, memory management, scheduling algorithms, file systems, and more. </p>
<h3 class="mb-0">UPenn - Embedded Systems</h3>
<div class="subheading mb-3">ESE350/519</div>
<p>A lab-focused/project course exploring embedded systems designs, implementations, and applications. The course starts from the hardware-level and covers power management and circuitry for an embedded system. It moves to low-level programming, understanding how to write C to control the various pins and registers on an embedded platform. It finishes with a conceptual, software-level tour of real-time operating systems before students build a final project of their choosing. </p>

<p> Students mainly work with Unix-like systems and program in C. Course projects include writing a user shell and building "PennOS", a Unix-like operating system with a priority scheduler and flat filesystem. </p>
<p> Students write their code in C on the Arduino Uno, using the standard C + AVR + FreeRTOS libraries for the labs and final project. For the final project, they are allowed to use other microcontrollers if preferred. </p>

<p> <a href="https://ese350.seas.upenn.edu/">ESE350 (Spring)</a> is the undergraduate version while <a href="https://ese519.seas.upenn.edu/">ESE519 (Fall)</a> is the graduate version, but they largely shared the same material. Here are the final project galleries - <a href="https://ese519f2020.devpost.com/project-gallery">Fall 2020</a> + <a href="https://ese350s21.devpost.com/project-gallery">Spring 2021</a>. </p>

<p> <a href="https://boonloo.cis.upenn.edu/about/teaching/cis380/">CIS380 (Fall)</a> is the undergraduate version while <a href="https://boonloo.cis.upenn.edu/about/teaching/cis548-sp20/">CIS548 (Spring)</a> and CIT595 (Summer) are the graduate versions, the latter belonging to the <a href="https://onlinelearning.seas.upenn.edu/mcit/">MCIT program</a>. CIS548 had an additional project on memory management while CIT595 cut out the PennOS project and instead had a project on networked systems. </p>
</div>
<div class="flex-shrink-0"><span class="text-primary">Fall 2019, Spring 2020*^, Summer 2020*^</span></div>
<div class="flex-shrink-0"><span class="text-primary">Fall 2020 (Online), Spring 2021* (Online)</span></div>
</div>

<div class="d-flex flex-column flex-md-row justify-content-between mb-5">
<div class="flex-grow-1">
<h3 class="mb-0">Computer Architecture</h3>
<h3 class="mb-0">UPenn - Computer Architecture</h3>
<div class="subheading mb-3">CIS371/CIS501</div>
<p>A project course on computer architecture. This course builds upon the earlier concepts introduced in CIS240/CIT593. Students learn more about how modern processors are optimized for speed and efficiency. Methods discussed include pipelining, superscalar design, branch prediction, out-of-order execution, caching, multicore design, and more. </p>

<p> Throughout the course, students use Verilog to program digital logic building blocks such as a ripple-carry adder, a carrylook-ahead adder, a divider, and an ALU. They then take these building blocks to build up an LC-4 CPU, enhanced with pipelining and superscalar designs. Students simulate their designs using Vivado and upload their code to a ZedBoard FPGA. </p>

<p> <a href="https://www.seas.upenn.edu/~cis371/current/">CIS371 (Spring)</a> is the undergraduate version while <a href="http://cis.upenn.edu/~cis501/previous/fall2019">CIS501 (Fall)</a> is the graduate version, but they shared the same course material. </p>
</div>
<div class="flex-shrink-0"><span class="text-primary">Fall 2019, Spring 2020^</span></div>
<div class="flex-shrink-0"><span class="text-primary">Fall 2019, Spring 2020 (Online)</span></div>
</div>

<div class="d-flex flex-column flex-md-row justify-content-between mb-5">
<div class="flex-grow-1">
<h3 class="mb-0">Introduction to Hardware/Software Lab ("Silicon Garage")</h3>
<div class="subheading mb-3">ESE190/M&TSI</div>
<p>An introductory course to hardware/software lab work using the Arduino platform. The course is designed for non-engineers who don't have much programming or circuit experience. Students learn the basics of programming and physics to build their own circuit projects using Arduino. </p>

<p> Students use the standard Arduino Uno model for the labs. Labs include turning on LEDs with pushbuttons, building a mini-thermostat, and using WiFi for IoT communication. They write their code in C and are encouraged to use external libraries as needed for their final project. </p>

<p> Here is the <a href="https://www.seas.upenn.edu/~ese190/">ESE190</a> website and the <a href="https://ese190s19.devpost.com/project-gallery">Devpost</a> for Spring 2019's final projects. <a href="https://fisher.wharton.upenn.edu/management-technology-summer-institute/">M&TSI</a> is a high-school summer program at Penn that uses a condensed version of the ESE190 curriculum; here is the <a href="https://mtsi2021.devpost.com/project-gallery">Devpost</a> for Summer 2021's final projects. </p>
</div>
<div class="flex-shrink-0"><span class="text-primary">Spring 2019, Summer 2021*^</span></div>
</div>

<div class="d-flex flex-column flex-md-row justify-content-between mb-5">
<div class="flex-grow-1">
<h3 class="mb-0">Embedded Systems Lab</h3>
<div class="subheading mb-3">ESE350/519</div>
<p>A lab-based project course exploring embedded systems designs, implementations, and applications. The course starts from the hardware-level and covers power management and circuitry for an embedded system. It moves to low-level programming, understanding how to write C to control the various pins and registers on an embedded platform. It finishes with a conceptual, software-level tour of real-time operating systems before students build a final project of their choosing. </p>

<p> Students write their code in C on the Arduino Uno, using the standard C + AVR + FreeRTOS libraries for the labs and final project. For the final project, they are allowed to use other microcontrollers if preferred. </p>
<h3 class="mb-0">UPenn - Operating Systems</h3>
<div class="subheading mb-3">CIS380/CIS548/CIT595</div>
<p>A project course on operating systems. This course builds upon the latter concepts introduced in CIS240/CIT593. Students learn about the basics of an operating system, including process management, system calls, memory management, scheduling algorithms, file systems, and more. </p>

<p> <a href="https://ese350.seas.upenn.edu/">ESE350 (Spring)</a> is the undergraduate version while <a href="https://ese519.seas.upenn.edu/">ESE519 (Fall)</a> is the graduate version, but they largely shared the same material. Here are the final project galleries - <a href="https://ese519f2020.devpost.com/project-gallery">Fall 2020</a> + <a href="https://ese350s21.devpost.com/project-gallery">Spring 2021</a>. </p>
<p> Students mainly work with Unix-like systems and program in C. Course projects include writing a user shell and building "PennOS", a Unix-like operating system with a priority scheduler and flat filesystem. </p>

<p> <a href="https://boonloo.cis.upenn.edu/about/teaching/cis380/">CIS380 (Fall)</a> is the undergraduate version while <a href="https://boonloo.cis.upenn.edu/about/teaching/cis548-sp20/">CIS548 (Spring)</a> and CIT595 (Summer) are the graduate versions, the latter belonging to the <a href="https://onlinelearning.seas.upenn.edu/mcit/">MCIT program</a>. CIS548 had an additional project on memory management while CIT595 cut out the PennOS project and instead had a project on networked systems. </p>
</div>
<div class="flex-shrink-0"><span class="text-primary">Fall 2020^, Spring 2021*^</span></div>
<div class="flex-shrink-0"><span class="text-primary">Fall 2019, Spring 2020* (Online), Summer 2020* (Online) </span></div>
</div>

<div class="d-flex flex-column flex-md-row justify-content-between mb-5">
<div class="flex-grow-1">
<h3 class="mb-0">Senior Design Capstone</h3>
<div class="subheading mb-3">ESE450/451</div>
<p> Students in electrical engineering, systems engineering, computer engineering, network engineering, and more take this two-part capstone course to build a project of their own choosing. They frequently give updates on their progress through staff meetings, written reports, and class presentations, culminating in a demo day finale + final report/video at the end of both semesters. </p>
<h3 class="mb-0">UPenn - Introduction to Computer Systems</h3>
<div class="subheading mb-3">CIS240/CIT593</div>
<p>An introductory course on computer systems. Students learn the bottom-up fundamentals of modern computers, from CMOS transistor circuits to digital logic basics. Once they understand how datapaths and ISAs work, they switch to a top-down view and work in assembly and C to build their understanding of an operating system. </p>

<p> There is always a wide variety in the projects that we see for ESE Senior Design, ranging from pure software to heavy hardware to a mix of both. I've had the joy of mentoring both the Class of 2020 + Class of 2021 in ESE Senior Design and I'm consistently impressed by the effort and creativity of my students. </p>
<p> Course projects include writing a basic user/OS program in LC-4 assembly (an educational programming language similar to LC-3) and writing a disassembler and a compiler in C. </p>

<p> Here is the <a href="https://seniordesign.ese.upenn.edu/">ESE Senior Design</a> website and the <a href="https://ese451s20.devpost.com/project-gallery">Class of 2020 Devpost</a> + <a href="https://ese450f20.devpost.com/project-gallery">Class of 2021 Devpost</a>, if you'd like to check out some of the awesome work that our students have done. </p>
CIS240 (Fall/Spring) is the undergraduate version while <a href="https://www.seas.upenn.edu/~cit593/">CIT593 (Summer)</a> is the graduate version, but they shared the same course material. </p>
</div>
<div class="flex-shrink-0"><span class="text-primary">Fall 2019, Spring 2020^, Fall 2020*^, Spring 2021*^</span></div>
<div class="flex-shrink-0"><span class="text-primary">Fall 2018, Spring 2019, Summer 2019 (Online)</span></div>
</div>
</div>
</section>
Expand Down

0 comments on commit fd0fb9c

Please sign in to comment.