Work Experience
- ServiceNow:
Software Development Engineering Intern
June 2019 - September 2019; June 2020 - September 2020 - Washington State Fair
: Junior Landscaper
June 2015 - September 2015; June 2016 - October 2016; June 2017 - October 2017
Projects
Research in Time-Series Forecasting/Data Science (Python)
- Conducted undergraduate research in collaboration with Infoblox, developing new methodologies for forecasting peak values in time-series under the guidance of Professor Juhua Hu.
- Wrote and defended a thesis for the University of Washington, earning Honors in Computer Science and Systems in June 2020.
- An invaluable experience in how to research new knowledge independently, work through the Data Science life cycle, and to concisely and effectively present my work.
Bot for Discord (Java)
- Created a (Chat) Bot for the communication application Discord. The bot detects when a user starts livestreaming using Twitch and/or Youtube then sends a notification to all users on the same server with the URL to the user’s livestreaming service.
- This was created as a Maven project using DV8FromTheWorld’s JDA as a dependency and was deployed using Heroku to connect the bot to Discord.
Personal Website (HTML and CSS)
- Self-taught HTML and CSS to create a personal website for sharing my resume and projects located at https://students.washington.edu/trstew
Awards
- School of Engineering and Technology: Academic Excellence in Computer Science Award (2020)
- School of Engineering and Technology: Outstanding Research Award (2020)
- Mary Gates Research Scholar (2019-2020)
- Washington State Opportunity Scholar (2016-2020)
Relevant Classes
TCSS 305: Programming Practicum
Programming Praticum introduces fundamental programming concepts for Object-oriented design in designing medium scale projects. Concepts include Observer Design Pattern, Graphical User Interfaces, and Inheritance Hierarchy to create robust and maintainable applications.
TCSS 333: C for Programming Systems
Introduces C as a programming language and its uses for systems programming in a Linux environment. Covers concepts such as pointers, dynamic memory allocation and the memory model, system calls, how to construct Abstract Data Types in procedural programming, and how to use a Linux/Unix environment through bash.
TCSS 342: Data Structures
Discusses in depth how fundamental Data Structures are designed so that performance of each Data Structure is understood and gives an understanding of how Data Structures can be implemented optimally for a given scenario.
TCSS 343: Design and Analysis of Algorithms
Teaches how to design and analyze complexity of algorithms. Covers very useful design patterns and famous algorithms to provide a basis for efficient and correct algorithm design.
TCSS 360: Software Development and Quality Assurance
Presents standard development practices in Software Development to create quality software that is maintainable and meets specifications. This encompasses working in a team to write software specifications, designing and implementing an application, creating a suite of tests for the application, and then validating specifications.
TCSS 371: Machine Organization
Covers how computing systems are designed in terms of hardware to develop the relationship between hardware and software. This explores digital logic, machine organization, assembly language, and teaches how to translate a high-level programming language into a language understandable to a machine.
TCSS 372: Computer Architecture
Covers the design of the micro-architecture level of machines and advanced architecture features that improve performance. Topics includes CPU design with respect to datapaths and pipelining, memory hierarchy, level of cache memory, virtual memory, and parallel processing.
TCSS 422: Computer Operating Systems
Covers components that important to the design of an Operating System such as process management, concurrency, inter-process communication, multi-threading, mutual exclusion, and security.
TCSS 435: Artificial Intelligence and Knowledge Acquisition
Examines how the use of search algorithms, knowledge representation, and machine learning can be use to create 'intelligent' systems.
TCSS 445: Database System Design
Teaches fundamental concepts for the design, implementation, and deployment of application databases.
TCSS 455: Introduction to Machine Learning
Explores the internals of different machine learning algorithms such as decision trees, random forests, Bayesian learning, neural networks, and clustering. Has students work in teams of three throughout the quarter on a classification problem, with the goal of increasing the accuracy of the classifier.
TCSS 481: Computer Security
Discusses topics related to network and system security such as symmetric and public-key cryptography. Provides examples of programming and protocol vulnerabilities to demonstrate how to exploit them and defend against the exploits.
TCSS 487: Introduction to Cryptography
Teaches how to use and implement basic cryptographic technologies; namely symmetric and asymmetric cryptography. As well as covering other important concepts such as authentication and digital signatures.
TCSS 543: Advanced Algorithms
Expands further into the design and analysis of more advanced algorithms.
TCSS 551: Big Data Analytics
Present various techniques that can be applied to tasks in big data analysis and mining. Teaches how to apply statistical theories and current technologies for mining big data such as Spark.
TCSS 558: Applied Distributed Computing
Teaches how to create efficient, reliable, secure, and extensible applications and solutions through distributed computing techniques. Such topics include multi-threaded applications, server and hardware virtualization, cloud computing, communication between objects among different machines, implementing servers that can interact with multiple clients concurrently, and locating and tailoring components.
TMATH 124-126: Calculus with Analytical Geometry I-III
Covers mathematical concepts such as derivatives, integrals, sequences and series.
TMATH 307: Differential Equations
Explores the different properties of first order and second order differential equations. Also covers Laplace Transform and systems of differential equations.
TMATH 308: Matrix Algebra
Introduces Linear Algebra, covering concepts about systems of linear equation, algebra for matrices, vector and Euclidean spaces, linear independence, eignevectors, and eigenvalues.
TMATH 390: Probability and Statistics for Engineers and Scientists
Teaches how to analyze data for Engineering and Scientific disciplines. Discusses topics on distributions, conditional probability, descriptive and inferential statistics, sampling errors, and confidence intervals.