Full-Stack Software at Scale

ENG EC 531

Prerequisites ENGEC 327 or ENGEC 602: - Scaling software to many developers, modules, or machines requires a fundamentally different skill-set than writing short prototype code. Large groups of software engineers developing web or mobile applications, financial or healthcare systems, and even multiplayer games must synthesize a wide variety of elements at all layers of the software stack. This course addresses fundamental skills and experience needed for such software development within a modern multi-developer software development infrastructure. Through a variety of intensive programming projects in various languages and group sizes, students will learn about four core elements of software development at scale: design (writing future-oriented code for modularity, extensibility, interoperability), distribution (managing code across multiple processors), optimization (understanding the long-term effects of design and distribution on performance), and security (how all the previous elements influence the security and privacy of the overall system).

SPRG 2025 Schedule

Section Instructor Location Schedule Notes
A1 Trachtenberg CDS 264 TR 1:30 pm-3:15 pm Waitlist: https://ece.wufoo.com/forms/svuoaf00k3zvnm/

Note that this information may change at any time. Please visit the MyBU Student Portal for the most up-to-date course information.