layout: true
Class 7: Editors
--- class: center, middle # Editors ### Class 7 --- # Overview 1. Announcements 2. Review + Exercises 3. Q&A 4. Bonus lecture - Jobs and internships 5. Basic assignment --- # Announcements * Regex assignments due Oct 31 * Git 2 assignments due Nov 7 * Editors assignments due Nov 14 --- # Review * Editors are a personal choice * I'm a Vim shill * Vim is all about modes, motions, operators, and counts --- # Quick Vim recap * Modes * Normal (ESC), Command-Line (`:`), Insert (`i`, `a`), Replace (`R`), Visual (`v`), (Visual Block) * Motions * `hjkl`, `0`, `$`, `w`, `b`, `e`, `gg`, `G` * Operators * `d`, `c`, `y`, `p` * Counts can quantify how many of a motion or operator to do * Other * `x`, `r`, `u`, `^r` * `/` to search for patterns, `n`, `N` * Command-Line * `:w`, `:q`, `:wq`, `:x`, `:s`, `:help` --- # Activity * Configure Git to use your preferred editor! * https://www.git-scm.com/book/en/v2/Appendix-C:-Git-Commands-Setup-and-Config --- class: center, middle # Bonus lecture: fields and jobs in EECS --- ## EECS is a __very__ broad subject * No wonder when you have EE, CE, and CS all in one acronym * There's a lot of different ways to divy up the space: this is just my conception of it * I'll keep it _computer_-related * Sorry, analog and power EEs * __Not an all-encompassing list__ --- ## Domains ### Computer hardware * Physical design engineer * RTL/ASIC design engineer * Design verification engineer * Computer architect -- ### Hardware-software twilight zone * Embedded systems engineer * Firmware engineer --- ## Domains ### Computer systems * Systems software engineer * Compiler engineer * Embedded software engineer --- ## Domains ### Applications * Desktop software developer 🦕 * Mobile app developer 📱 * Front-end web developer * Back-end web developer * Full-stack developer * Software engineer* * DevOps engineer * Testing/QA engineer --- ## Domains ### Data science * Data analyst * Data engineer * Machine learning engineer ### Other areas * Cybersecurity * Robotics * Scientific computing/simulation * Research --- ## Industries * You can find these jobs in various industries * Tech * Gaming * Finance * Telecommunications * Defense * Government * Health care * and more (you'd be surprised at the opportunities in the restaurant industry) --- ## Internships * Great way to get experience and build up your resume * I learned a lot of my practical skills on the job -- * Job postings will go up during the Fall and early Winter: try to nab them! * That doesn't mean all hope is lost if you're applying in late February/March * I got my internships as a "late" applicant * __It doesn't cost anything to apply, unlike with college applications__ -- * Career fairs are not _the_ only way to apply * You can still find success in online applications -- * Interviews often have a behavioral and technical portion * Behavioral interview will involve questions about you as a person * Technical interview will test your knowledge * Getting an answer wrong on a technical interview isn't the end of the world: often the interviewer is just as interested in your problem-solving process --- ## Internships * If your summer is open, try looking for an internship! * If you have companies in mind, check the job postings on their website * You can use websites like Indeed, Glassdoor, and LinkedIn to browse for jobs and see what's around * You might find something you like based on the description! * [r/cscareerquestions](https://wwww.reddit.com/r/cscareerquestions/) can be a useful place to get some opinions on how the job market is doing --- class: center, middle # Q&A --- class: center, middle # Basic assignment