I hold a joint bachelor's degree in Computer Science and East Asian Studies, as well as a second bachelor's degree in Game and Simulation Programming. For the past 5 years, I have worked professionally as a software developer and tester, and worked on video games as a hobbyist in my spare time. I did spend time as a tutor in college, and even in my professional career, colleagues and friends have told me that I would make a great teacher. I often help co-workers when they need help with ... [more]
I have worked with Java professionally for over 5 years, and have gotten certification from Oracle as a Java developer (Oracle Certified Professional, Java SE 6 Programmer). I have also tutored in Java and other programming languages, even teaching a coworker Java pretty much from scratch. Most of my professional Java experience has been developing and maintaining enterprise-level web sites and applications for government clients.
I have studied Japanese in high school and college, and after graduation continued as a self-learner. In 2009, I passed the JLPT Level 3 certification test.
I am an experienced writer and editor. I have had papers published and presented at several professional conferences and in journals. My undergraduate thesis is in the MIT library archives (only the highest-graded papers are put into the archive). As a professional software engineer, I usually was the main editor for any technical papers my teams produced. I've also written and edited entire design documents, which were then presented to government customers.
My study skills allowed me to gain two bachelor's degrees in very challenging subjects. I was able to successfully modify my study approach that I used in high school, to be able to complete a degree in a highly respected technical school. Even since getting into the professional world, I have continued to study and learn. I studied for and attained an Oracle certification in Java and a JLPT certification (a certification for the Japanese language). Besides certifications, I have used study skills to learn new skills and programming languages on the job. I am actually putting together an ebook on how to learn programming languages.
I've used C++ extensively since high school in my classwork, and continued in college. A great deal of my tutoring has been in C++. Most recently, at my current job, I used C++ to write code on an embedded system, that allowed different models of a modem to work properly.
I have worked professionally as a software engineer for 5, almost 6 years, learning a variety of languages. I taught a co-worker how to write and unit test Java software, and he only started with some basic knowledge from a book (he had not programmed in anything other than Matlab before). Prior to my professional experience, I studied computer science and programming at school, starting with AP Computer Science in high school, and culminating in degrees in Computer Science and Game and Simulation Programming. I also continue to learn new languages and skills in my spare time, most notably as a hobbyist game developer.
I studied computer science and got my first bachelor's degree at MIT. Since then, I have actually tutored computer science at the college level, helping students understand concepts via practical examples, even outside of code. For example, while explaining the concept of using mock objects in unit testing, I compared it to a fire drill: in real life situations, you would call the fire department to report a fire, but during a fire drill, you don't actually have that option available, so you "mock out" that step and assume the output. I've found that this step helped with both my tutoring students and colleagues at work, to whom I taught programming and computer science.
C# is one of my most recent object-oriented acquisitions in my repertoire. I started learning it in college. My knowledge of OOP and Java helped me pick it up. C# was also one of the languages I tutored in during my college days. Since then, I've continued with C# in a hobbyist capacity, writing scripts for the Unity game engine for fun.