Matthew Crain

Contact

You can contact me by emailing me at: mattcrain@gmail.com or mcrain@uci.edu
Feel free to request code samples or more contact information so we can talk.

Course Work

I'm currently attending the University of California, Irvine.
I expect to receive my B.S. in Computer Science in June 2010.
I have an overall GPA of 3.565 and a GPA of 3.804 in the School of Computer Science.

Computer Graphics

Intro to Computer Graphics - CS 112: Provided a introduction to the fundamentals of Computer Graphics. Projects focused around using OpenGL. Project samples available on request.
Project in Computer Graphics - CS 114 (In Progress): A quarter long project course focused on computer graphics.
Advanced Computer Graphics - EECS 204 (In Progress): A graduate level course in computer graphics.

Artifical Intelligence

Intro to AI - CS 171: An introduction to the field of Artificial Intelligence within Computer Science.
Project in AI - CS 175: A quarter long project in Artificial Intelligence. Project focused on solving Sudoku and Constraint Networks. Project samples available on request.

Database Management

Intro to Data Management - CS 122A: An introduction to databases through Relational Algebra and SQL
Project in Database Management - CS 122B: A quarter long project course consisting of 5 separate projects including JDBC Connectors, Servlets, Ruby on Rails, Database Administration, and AJAX. Projects samples available on request.

Computer Game Development

CS 113: This was a quarter long project course focusing on developing a game. The final game was built using Java and is available upon request. It's a 2D side scrolling platformer with some built in puzzle elements.

Computer Networks

CS 132: Focused on newtorking concepts and standards in an introductory manner.

Compilers

CS 142A: The course focus on compiler creation given a grammar for a language. Compiler was created in 7 steps going through syntactic and semantic analysis and eventually generating MIPS Assembly code.

Algorithm Design and Analysis

CS 161: Focused on exposure and analysis of various algorithms to create a foundation for learning Computer Science. Sorting, Integer Arithmetic, Dynamic Programming, String algorithms, Graphs (representation, traversal, ordering), Shortest paths, Minimum spanning trees, and Computational geometry.

Formal Languages and Automata Theory

CS 162: Centered around various classifications of language, regular, irregular, context-free, etc. and various machines that can recognize them. Also detailed Undecidability and NP-completeness and deriving whether or not a problem is undecidable or NP-complete through reductions onto known problems of the same classification.

Previous Work Experience

Position
Software Engineering Intern
Dates Employed
June 2009 - Present
Details of Employment
  • The initial portion of the internship focused around heavy modifications to the documentation system for the GameSpy SDKs. An automated process was developed that would allow comments in the source code to be compiled into various formats. Using the generated files as a base the documentation would automatically be formatted appropriately and uploaded into a Mediawiki based site for customers to access.
  • Focus then was placed on automatic testing and building of the SDKs across all platforms, this includes some experience with development on PC, Mac, Linux, PS3, PSP, Wii, and DS/DSi.
  • An ongoing task is preparing and documenting all systems and services for a complete datacenter move.
Employer Information
GameSpy provides SDKs for game developers to help make their games online enabled, among other things. You can see more information about GameSpy by going to their website.
Position
Software Engineering Intern
Dates Employed
January 2009 - March 2009
Details of Employment
  • As an interning software engineer I helped add and improve features to the company's online trip making service. The job included work with Java Servlets, Javascript, XML, web services, and a light amount of SQL. Also compatibility with all the different browsers for the services and additions was emphasized.
  • If you want to see a sample of the work I did go to their mapping service. In either of the text boxes for finding directions you can start typing the name of a city and an autocomplete feature will appear. There's also a 'Find on Map' section that does a similar autocomplete feature with businesses like popular restaurant, hotel, or grocery chains.
Employer Information
Rand McNally has been around publishing maps for more than 150 years. If you want you can find a lot of information about their history from the Rand McNally wiki page. You can also see their current website at randmcnally.com
Position
Standard In-n-Out Burger Employee
Dates Employed
May 2005 - December 2006
Details of Employment
Fairly standard, took orders from customers, handled large amounts of small transactions with accuracy, cooked french fries, cleaned the dining room, etc.
Employer Information
In-n-Out is a family owned fast food business. There's a little over 200 restaurants in the Western U.S. it's exceptionally popular and always busy. You can find more information on their website.>