Milwaukee School of Engineering

During my time at MSOE I achieved the following degree:
Bachelor of Science
  • Major: Computer Engineering
  • Minor: Mathematics
Coming into undergrad, I had some exposure to engineering via FIRST robotics and high school level courses. My emphasis during this degree was to develop my embedded system engineering acumen. Developing systems requires a "triple-helix" of hardware, software, and user experience expertise. MSOE provided a base track for computer engineering with elective options in field (EE, CE, SW, or CS), which already worked two portions of the "triple-helix". Additionally, I needed to fulfill general humanities requirements and electives, which started rounding out the design / user experience portion.

Courses

Below are the courses taken during this degree. I have broken them up by major theme for perusal.

Computer Engineering & Electrical Engineering

CE1900 - Digital Logic I : Combinational Systems
  • Introduction to digital logic
CE1910 - Digital Logic II : Sequential Systems
  • Adding registers / clocking; up to special purpose processor
EE2050 - Linear Circuits - Steady State I
  • Steady state in the DC domain
CE2800 - Embedded Systems I
  • Introduction to Assembly on a NIOS soft-core processor (effectively MIPS)
  • Implemented several low-level drivers and toy projects
EE2060 - Linear Circuits - Steady State II
  • Steady state in the AC domain
CE2811 - Embedded Systems II
  • Introduction to C for embedded systems
  • Worked through low-level driver implementations up to basics of RTOS task switching
EE2070 - Linear Circuits - Transients
  • Dynamic circuit behavior : capacitor and inductor elements
CE2930 - Intro to Computer Architecture
  • Learned and designed single-cycle, multi-cycle, and pipelined (in-order) processors
  • Learned memory hierarchy (peripheral, RAM, caching, etc.)
EE3050 - Dynamic Systems
  • Introduction to dynamic system modeling in time, laplace, and state-space
EE3220 - Digital Signal Processing
  • Introduction to DSP theory
EE3720 - Control Systems
  • Introduction to control systems theory and application
    • Most critical hands-on tuning of PID
CE3100 - Digital Electronic / Computer Interfacing
  • Conditioning signals for input : filtering, scaling, sacrificial circuits before control
  • Conditioning signals for output : current source / sink, open-collector v. push-pull, etc.
  • DACs, ADC, comparators, etc.
CE3910 - Embedded Systems III
  • Primary project using NIOS soft-core processor
    • Tracking target with two-axis servo turret and camera
  • Introduction to PCB layout
  • Interfacing with external memory and serial protocols (I2C, SPI, etc.)
CE4920 - Embedded Systems IV
  • Various projects using mixed analog / digital fabric on Cypress PSOC
CE4950 - Networking I
  • Signal conditioning, information theory
  • Project based with course specific networking protocol (self-selected microcontroller).
CE4960 - Networking II
  • Introduction to networking / internet protocols
CE4000 - Senior Design Project I
  • Self directed : developed ARM simulator
CE4010 - Senior Design Project II
  • Self directed : developed ARM simulator
CE4020 - Senior Design Project III
  • Self directed : developed ARM simulator

Software Engineering & Computer Science

SE1011 - Software Development I
  • (AP Computer Science - Java - in High School)
SE1021 - Software Development II
  • Java programming course
CS2862 - Data Structures
  • Introduction course to basic structures: e.g., linked-lists, trees, hash-maps, etc.
SE2890 - Software Engineering Practices
  • Requirements and Specifications, version control, Agile development, etc.
  • Project based : LEGO Mindstorms Java programming
CS3841 - Design of Operating Systems
  • Introduction course on subsystems of operating systems
  • Linux kernel case studies
CS321 - Computer Graphics
  • Survey course in fundamentals of computer graphics 2D to 3D
  • Also served as an introduction to C++
EE484 - Neural Networks
  • Topic survey course on neural networks
  • Emphasis on "shallow" networks and related ML tools like k-cluster, radial nets, etc.
CS498 - Topics in CS : Computer Vision
  • Survey course on feature extraction through to implementing portions of SIFT

General Sciences & Mathematics

MA136 - Calculus for Engineers I
  • Limits and derivatives
MA137 - Calculus for Engineers II
  • Integrals
MA231 - Calculus for Engineers III
  • Multivariate calculus
MA232 - Calculus for Engineers IV
  • Applications of calculus for engineering
MA235 - Differential Equations - Engineers
  • Differential equations
MA2310 - Discrete Mathematics I
  • Survey course on discrete mathematics
MA262 - Probability and Statistics
  • Survey course on probability / statistics
MA383 - Linear Algebra
  • Linear algebra methods
MA382 - Laplace and Fourier Transforms
  • Drilled into methods and proofs within the frequency domain
MA2320 - Introduction to Graph Theory
  • Survey course on graph theory
CH200 - Chemistry I
  • (AP Chemistry in High School)
PH2011 - Physics I - Mechanics
  • Studied classic physics with calculus
PH2021 - Physics II - Electro-Magnetism
  • Studied electromagnetism with a lab portion
  • Brief survey of optics
PH2031 - Physics III
  • Covered more modern physics : radiation, relativity, etc.
PH3600 - Physics of Semiconductor Devices
  • Covers from underlying crystal structure through to design, characterization of devices e.g., BJTs, MOSFETs, etc.
ME354 - Thermodynamics and Heat Transfer
  • Of interest, design of heat sinks and active cooling

Business / Economics / Humanities

OR2000 - Leadership and Teamwork
  • Studied methods of leadership and coordination among teams
OR3000 - Applied Servant Leadership
  • Studied the method of servant leadership versus other styles
EN131 - Composition
  • Introduction to college English
EN132 Technical Composition
  • Learned writing formats for a technical audience
EN241 - Speech
  • Study of presentation techniques and weekly presentation practice
OR402 - Professional Guidance
  • One credit course for resume, cover letter, etc. prep
HU432 - Ethics for Managers & Engineers
  • Study of various ethical frameworks along with practical case studies in industry
MS2220 - Foundations of Business Economics
  • Effectively an introduction to college level economics
MS3423 - Innovation and Business Markets
  • Introduction to entrepreneurship
HU100 - Contemporary Issues in Humanities
  • Introduction to humanities
HU494 - Creative Thinking
  • Design course, learned ideation techniques
HU433 - Philosophy
  • Introductory study of philosophy
HU495 - HU Topic : Philosophy of Mind and AI
  • Review of literature / debate on what constitutes a mind and whether a computer is capable of being a mind
SS460 - Foundations of Psychology
  • Introductory study of various branches of psychology
SS475 - Addictions and Compulsions
  • Learned the mechanisms of addictions and compulsions
  • Studied the symptoms and care strategies for various addictions / compulsions
SS461 - Organizational Psychology
  • Application of psychology for business management