JOSHUA GEORGE 1800, Jefferson Park Av., #912 Charlottesville, Virginia 22903 www.cs.virginia.edu/~jg9h H -(434) 244-7141 W-(434) 982-2389 jg9h@virginia.edu EDUCATION University of Virginia, Charlottesville, VA Fall 2001 - current Pursuing Master of Computer Science, GPA - 3.9 (Graduation: May 2003) Anna University, Chennai, India Fall 1997 - Spring 2001 BE - Computer Science, Major GPA - 3.7 (CGPA - 3.4) WORK EXPERIENCE Graduate Research Assistant, Advisor: Dr. Jack Davidson Fall 2002 University of Virginia Retargeting VPO (Very Portable Optimizer) to the TMS320C54X, a Digital Signal Processor from TI. To be used at the University of Illinois at Urbana-Champaign as part of the Zephyr project. Graduate Teaching Assistant (for Operating Systems), Fall 2001 - Spring 2002 University of Virginia Handled classes of 60 to 80. Designed and prepared programming assignments in Nachos (an operating system simulator). COMPUTER SKILLS Programming Languages: C, C++, Java, PASCAL, Perl, x86 Assembly Platforms: SunOS, Linux, Windows 98/NT/2000. Tools and others: CORBA, Jini, OpenGL, Lex/Yacc, ns-2, Perl, Nachos, Simplescalar PROJECTS * Spring 2002 - Designed and implemented a language for describing a 3D-world. A novel feature of this language is the ability to describe hierarchies of virtual objects, where any object can contain (encapsulate) other objects. (www.cs.virginia.edu/~jg9h/graphiz) * Fall 2001 - Wrote a Perl utility to automatically generate graphs of compile time and link time dependencies in a multi-file C program. Very useful to catch bad designs (like cyclic dependencies), and to eliminate false dependencies. * Spring 2001 - Designed and implemented an inter-working bridge that allows CORBA objects and Jini objects to use each other transparently. Our design was selected for presentation at the IEEE/ACM sponsored International Conference on High Performance Computing (HiPC 2000). * Fall 2000 - Developed a 3D rendering engine from scratch with support for flat/gouroud/phong shading and shaded texture mapping. * Spring 2000 - Developed a transparent Object Request Broker (ORB) that transparently allows remote objects to call each other. * Fall 1999 - Developed a small compiler to convert high-level commands to a robot into direct serial port communication with the robot. * Spring 1999 - Implemented a simulator for an x86 processor with a super-scalar RISC core. It takes x86 CISC instructions and breaks them into micro-ops that are then scheduled on the RISC core. * Fall 1998 - Implemented a time-shared ALU that allows two users to use a single ALU simultaneously (digital hardware project). * Spring 1998 - Developed a computerized registration program for Computer Society in C++ at the Ramanujan Computing Center. * Fall 1997 - Developed a text based GUI in C++ with support for menus, windows, dialogue boxes, buttons, input boxes, etc. * Fall 1997 - Wrote a suite of DOS utilities like recursive file finder, password protection for directories, a boot loader. * Spring 1997 - Wrote a time-table allocator for Jawahar Vidhyalaya Higher Secondary School. It generates a time-table for scheduling classes, given various constraints. RESPONSIBILITIES/ * Member of the Executive Committee Computer Society of Anna University. LEADERSHIP * Conducted Unix/C/C++ classes for sophomore year students. VOLUNTEER WORK * Volunteer in The Eleventh International Conference on Parallel Architectures and Compilation Techniques. (ACM PACT 2002). * Volunteer in National Social Service (NSS). * Wrote articles for the Computer Society of Anna University magazine.