EDUCATION
George Mason University, Fairfax, VA December 2017
Bachelor of Science in Computer Science
TECHNICAL SKILLS
Programming Languages: Java, C, Python, SQL, UML, Assembly
Standards and Frameworks: Maven, Spring, Hibernate, JUNIT, MIPS
IDE: Eclipse, Sublime Text, GDB debugger, VIM, Notepad, Netbeans
OS & Apps: Linux, OSX, Microsoft, MS Word, MS Excel, MS PowerPoint, MatLab, WEKA
Version Control: Git
Tech Stack and Methodologies: TDD, Agile, Scrum
Notable CS Courses: Object-oriented programming, Data Structures, Algorithms Analysis, Data Mining, OOD, Computer System Programming, Automata Theory, SDLC Requirements and Design, Low-level programming, Computer Systems Architecture, Digital Electronics, Database Concepts, Computer Networking
Professional: Excellent communication skills, passion for learning, strong time management skills, excellent interpersonal skills, Self-motivated, creative thinker, detail-oriented
SOFTWARE EXPERIENCE
Modern Gem Game Java Application
Developed a reasonably large application, a novel game called Modern Gems. It is a two-dimensional tile-matching game in which players are presented with a board of tiles of various kinds of gems. The player selects one such gem which is eliminated from the board; nearby gems of the same kind which are connected to the selected gem are also eliminated. The player's score increases by the square of the number of gems eliminated. Removed gems leave holes causing remaining gems to fall. Gems first fall down into holes, then any empty columns are eliminated causing columns to the right to shift left. (Object oriented, java)
High Accuracy Unlimited Digits Calculator Java App
Wrote a number class that will allow you to do arithmetic with unlimited digits and accuracy. Write a calculator, which has only a few operations for doing basic arithmetic with Numbers. The calculator displays a menu, prompts the user to enter an operation, inputs a Number for this operation, performs the operation, saves the resulting Number as the current value of the calculator, and displays the Number representing the current value. (Data Structures, Java)
Infinite Gomoku Game
Developed a program that creates a board using an Arraylist and looks for the longest sequence in horizontal, vertical and diagonal direction.
(Data Structures, Java)
Python File IO Python Program
Designed a File IO application to read and write character strings to files
Implemented a dictionary by reading or writing files in Python
Cellular Text Translator C Application
Implemented a Cellular Text Translator by reading a correct dictionary file, translating from English to TextSpeak, translating from TextSpeak to English and adding a word to dictionary file.
The first line of the dictionary file will be the number of English/TextSpeak phrase pairs in the dictionary.
The first pair will follow immediately after the line containing the number of pairs.
For every English word or phrase in the dictionary file, there will be a corresponding TextSpeak line immediately following the line containing the English word/phrase. (C program)
Software Projects
Implemented the data structure ArrayLinkedList. An ArrayLinkedList has an ArrayList, and it has Nodes like a LinkedList in Java
Wrote classes that implement a hash table, a map, and a binary search tree. (Data Structures, Java)
Control flow and Array Usage (Object Oriented, Java)
Define a class to model a linear equation of variables in x and y in Slope Intercept Form and General Form. (Object Oriented, Java)
Wrote unit tests for Modern Gems project (Object oriented, java)
Implemented a primitive version of Cowsay that generates ASCII pictures of a cow in Java and extending its functionality using inheritance.
Implemented Singly Linked Lists. (C program)
Wrote code to store floating point numbers in a 32-bit integer (Computer systems and programming, C)
Heap Memory Management (Computer systems and Programming)
Address Translation. Implementing a virtual to physical memory mapping using bit level operators. (Computer systems and Programming)
MIPS program that accepts a positive integer and checks whether the input is a triangular number.
MIPS program that simulates a floating-point adder
Wrote a recursive procedure in a MIPS program
Created a gambling game, Sarvi Peli, using Random Numbers. Our program will pit a human player against the Computer. (C program)