Tangrui Song, acqpmo@r.postjobfree.com, 226-***-****
Tangrui Song
Recent Honour Graduate wi th great pass i on and sol id background in Computer Sci ence and Math. Interested i n Sof tware/Web Dev, DB Admi n, QA. Address
411 White Birch Ave.
Waterloo, ON. N2V 2T3
Phone
Github
Trsong
acqpmo@r.postjobfree.com
Skype
tangrui.song
EDUC
(2011 - 2015)
HONOUR B.MATH.COMPUTER SCIENCE UNIVERSITY OF WATERLOO GPA: A- (82) Distinction April 2015
EXPERIENCE
(2013.9 – 2013.12)
Instructional Support Assistant VERY GOOD PERFORMANCE Karen Anderson/ University of Waterloo, IS Coordinator
Tutorial leader; Marking meeting coordinator; Test developer;
Bash Script, Scheme (like Lisp), HTML;
Motivated and persistent worker, striving for excellence; developed a great tool for automated tests generating: “The AutotestGenerator”:
A friendly Scheme User Interface for TAs (limited Scheme experience); Fully tested and no bug guarantee – verified in winter 2014 semester;
Save approx. 70% work load, TAs able to focus on quality, no need to worry about tool training and debugging.
(2015.1 – 2015.4)
BB10 Plugin Developer EXCELLENT PERFORMANCE
Tim Windsor/ Open Source Technical Lead at BlackBerry
BB10 Webworks Nowplaying Plugin; Git repo: https://goo.gl/xhcILS
Be chosen to attend “Undergraduate Capstone Open Source Project” representing University of Waterloo;
BB10 native (C++ with Qt4), HTML, JavaScript;
Responsible for further exploration of Qt’s signal and slot mechanism under BB10 native environment;
Had a steep learning curve since the technique needed for this plugin is rarely used and largely undocumented.
SKILLS
Operating System: Linux, Windows; Experienced with shell script and threaded programming Working Knowledge Language: C / C++ (with Qt4), Java, C#, HTML, JavaScript, CSS, GitHub Course Knowledge Language: LAMP, DB2, JDBC, Python (with Flask), GDB, Valgrind, SVN Strong Understanding Of: Object-oriented Programming / Design Pattern Relational Database Systems / Database Design
Networking Layers and Protocols / Distributed Systems Concepts and Design Tangrui Song, acqpmo@r.postjobfree.com, 226-***-****
VOLUNTEER
(2012.9 – 2012.9.7)
Orientation Week "Pink Tie" leader
Responsibilities: Get to work closely with first year students, acting as a leader to the first years on each of the orientation week teams. Each team will have 6-8 Pink Ties, who are responsible for leading first years to events, acting as role models for first years, and promoting positive feelings throughout the week.
ABOUT ME
(1993.5.29 - )
I Wish To Hear From You
My name is Tang. I'm a positive recent graduate with great passion and solid background in Math and Computer Science. During my first work term, I organized, prepared and delivered Tutorial Sessions/Office Hours for CS students which build me good interpersonal communication skills and ability to work well with others. Besides, I'm confident, efficient, warm-hearted, with willing to learn attitude, and be able to work quickly and efficiently in both high pressure and low pressure situations. SCHOOL PROJECTS
(2013.5 – 2013.8)
The Game of ChamberCrawler3000 (CS246 Object-Oriented Software Development)
Designed and implemented a console RPG game in C++ (OpenGL for UI) ;
Used various design patterns such as Factory, Observer, Singleton and Bridge patterns;
Automatic and random generation of enemies, gold, and potions;
Various classes for player to choose.
(2014.1 – 2014.4)
Compiler for Simplified C Language (CS 241 – Sequential programming)
support pointers, dynamic memory allocation and all basic control flow statements;
generate binary executable file for MIPS-r3000 processor;
code optimization using dead code elimination, constant folding and propagation;
Almost bug-free: received 95+ average on all tests.
(2014.5 – 2014.8)
OS161 Operating System (Simplified BSD-like OS, running on IBM’s System/161 using MIPS-r3000 processor) (CS 350 – Operating System)
Lock and condition-variable implementation;
Process support and system call layer: fork, waitpid, execv;
Round-robin Scheduler;
Application’s address space, page table and the virtual memory system;
Full-featured file system, inode;
Almost bug-free: received 95+ average on all tests.
(2015.1 – 2015.4)
Remote Procedure Call Library (CS 454 – Distributed System)
Implement an RPC library and a Binder supporting dynamic binding in C++;
Support multi-client and multi-server using TCP/Sockets;
Full Client/Server crush tolerance. Client/Server may join/leave anytime;
Load balancing on server sider through Binder (Round-Robin Scheduler);
Bonus: Cached RPC call on client side, not need to connect to Binder a second time;
Fully-tested: passed all the tests