e97cc60d |
1 | %% start of file `daniel_watson_cv.tex' |
2 | %%% credit: |
f27afb42 |
3 | %% start of file `template_en.tex'. |
4 | %% Copyright 2006-1008 Xavier Danaux (xdanaux@gmail.com). |
5 | % |
6 | % This work may be distributed and/or modified under the |
7 | % conditions of the LaTeX Project Public License version 1.3c, |
8 | % available at http://www.latex-project.org/lppl/. |
9 | |
10 | |
2714388b |
11 | \documentclass[10pt,a4paper]{moderncv} |
f27afb42 |
12 | |
13 | % moderncv themes |
14 | % optional argument are 'blue' (default), 'orange', 'red', 'green', 'grey' and |
15 | % 'roman' (for roman fonts, instead of sans serif fonts) |
21458545 |
16 | \moderncvtheme[blue]{casual} |
f27afb42 |
17 | %\moderncvtheme[green]{classic} % idem |
18 | |
19 | % character encoding |
20 | % replace by the encoding you are using |
21 | \usepackage[utf8]{inputenc} |
22 | |
23 | % adjust the page margins |
24 | \usepackage[scale=0.8]{geometry} |
25 | % if you want to change the width of the column with the dates |
26 | %\setlength{\hintscolumnwidth}{3cm} |
27 | % only for the classic theme, if you want to change the width of your name |
28 | % placeholder (to leave more space for your address details |
29 | %\AtBeginDocument{\setlength{\maketitlenamewidth}{6cm}} |
30 | % required when changes are made to page layout lengths |
31 | \AtBeginDocument{\recomputelengths} |
32 | |
33 | % personal data |
96c0da13 |
34 | \firstname{Daniel} |
35 | \familyname{Watson} |
f27afb42 |
36 | % optional, remove the line if not wanted |
9fe2c992 |
37 | \title{Daniel Watson's CV} |
8d95272e |
38 | % optional, |
39 | \address{7665 Palmilla Drive \#5210}{San Diego, 92122} |
40 | % optional, |
96c0da13 |
41 | \mobile{805.699.5690} |
8d95272e |
42 | % optional, |
96c0da13 |
43 | %\phone{phone (optional)} |
8d95272e |
44 | % optional, |
96c0da13 |
45 | %\fax{fax (optional)} |
8d95272e |
46 | % optional, |
96c0da13 |
47 | \email{ozzloy@gmail.com} |
8d95272e |
48 | % optional, |
96c0da13 |
49 | %\extrainfo{additional information (optional)} |
f27afb42 |
50 | % '64pt' is the height the picture must be resized to and 'picture' is the name |
51 | % of the picture file; optional, remove the line if not wanted |
757386d1 |
52 | %\photo[64pt]{daniel_watson} |
f27afb42 |
53 | % optional, remove the line if not wanted |
8bdce07a |
54 | %\quote{"If I have seen further it is only by standing on the shoulders of |
55 | %giants." -Sir Isaac Newton} |
f27afb42 |
56 | |
57 | % uncomment to suppress automatic page numbering for CVs longer than one page |
ca725625 |
58 | \nopagenumbers{} |
f27afb42 |
59 | |
60 | |
61 | %------------------------------------------------------------------------------- |
62 | % content |
63 | %------------------------------------------------------------------------------- |
64 | \begin{document} |
65 | \maketitle |
66 | |
67 | \section{Education} |
68 | % arguments 3 to 6 are optional |
0e5526f5 |
69 | \cventry{2003--2008}{BS}{UCSD}{San Diego}{} |
70 | {Computer Science major with a Mathematics Minor} |
78088c4a |
71 | \cventry{1999--2003}{Diploma}{Bellarmine College Preparatory}{San Jose}{}{} |
f27afb42 |
72 | |
73 | \section{Experience} |
74 | \subsection{Vocational} |
75 | % arguments 3 to 6 are optional |
bc9077d1 |
76 | \cventry{2010--2011}{Computer Engineer}{VisionTree, Inc.}{San Diego}{} |
77 | { |
22df97fe |
78 | $\cdot{}$ A customer wanted the ability to show sections of stored surveys |
79 | conditionally. For legacy reason, this had to be done in CFML and was further |
80 | constrained by existing surveys which could were not under our control. After |
81 | finding the relevant CFML, I constructed additions to the in-house developed |
82 | markup language and corresponding processing CFML. This feature has been in |
83 | use for the last six months without affecting other survey features. |
84 | \newline{} |
85 | $\cdot{}$ Motivated by the difficult setup process, I decided to automate the |
86 | setup of new Coldfusion developer stations. Adobe's coldfusion installer |
87 | script has user interaction, so initial scripting was done with Expect. To |
88 | make the installer more maintainable by the other programmers, this was |
89 | converted to ruby and bash. Several development systems have since used |
90 | this installer. |
91 | \newline{} |
92 | $\cdot{}$ Because the old svn systems were difficult to work with, I converted |
93 | several of them to git repos served by gitosis. I set up the gitosis server |
94 | and taught some coworkers how to use ssh-keys for easier interaction with it. |
039a4512 |
95 | \newline{} |
96 | $\cdot{}$ VisionTree's store of surveys, written in their custom markup, has |
97 | syntax errors which sometimes cause real customer data loss. In order to |
98 | combat this, I talked with developers creating the surveys and with those who |
99 | wrote the parsing code about the types of errors and which were most common. |
100 | I wrote a ruby gem generate error reports in xml. From there, it was easy to |
101 | write a server for an internal site that presents all the data to the other |
102 | developers. After creating the site, I modified the internal gedit plugin to |
103 | present the same data within gedit on developed as they are developed, before |
104 | they are pushed live for customers. |
bc9077d1 |
105 | } |
4bebc30d |
106 | \cventry{2006--2010}{Computer Engineer}{Avaak, Inc.}{San Diego}{} |
107 | { |
bc9077d1 |
108 | The last project I created at Avaak is a system monitoring tool which spoofed |
109 | Avaak's clients to test their servers. This project weighed in at 3kloc of |
110 | Ruby. I also created a test framework for the firmware on the router product |
111 | which cross-compiled unit tests, loaded the binary onto the target hardware, |
112 | ran the tests and reported results. An earlier project had invariant image |
113 | feature extraction in C. Later, I used PCA, and Fischerfaces analysis under |
114 | the supervision of Serge Belongie, Ph.D. UCSD. My first project was a |
115 | firmware loader for an embedded camera hardware using mspgcc and C. |
5dccdc6a |
116 | } |
515f742c |
117 | \cventry{2007}{Programming Languages Tutor}{UCSD}{San Diego}{} |
118 | { |
bc9077d1 |
119 | In CSE 130, I tutored students Programming Languages in the fall and winter |
120 | quarters. We covered different styles of programming through different |
121 | languages: functional programming with OCaml; object oriented programming |
122 | with python; logic programming with prolog. |
5dccdc6a |
123 | } |
d73fc44f |
124 | \subsection{For Inspiration and Recognition of Science and Technology} |
125 | % arguments 3 to 6 are optional |
bc9077d1 |
126 | \cventry{2003--2011}{Programming Subteam Mentor}{Midnight Mechanics Team 812} |
515f742c |
127 | {San Diego}{} |
128 | { |
bc9077d1 |
129 | I helped high school students code controller firmware and introduced them to |
130 | aspects of software development like version control with svn, and logic flow |
131 | control structures with C. |
d73fc44f |
132 | } |
1b7a242f |
133 | \cventry{2002--2003}{Programming Subteam Member}{Cheesy Poofs Team 254} |
515f742c |
134 | {San Jose}{} |
135 | { |
bc9077d1 |
136 | Coded robot controller firmware and autonomous mode in pBasic, shrinking code |
137 | into the EEPROM. |
d73fc44f |
138 | } |
1b7a242f |
139 | %\subsection{Miscellaneous} |
140 | %% arguments 3 to 6 are optional |
141 | %\cventry{2000--2003}{Track Marshall}{SpeedRing}{San Jose}{}{ |
142 | % SpeedRing is go-kart racing for adults\newline{} |
143 | % flag racers on track for passing, rule violations, warning of crashes |
144 | %} |
145 | % |
146 | %\cventry{1998--1999}{Range Marshall}{Sunnyvale Rod \& Gun Club}{Sunnyvale}{}{ |
147 | % refill target shooters and keep scores |
148 | %} |
38aa84ae |
149 | %\section{Languages} |
150 | %%\cvlanguage{language 3}{Skill level}{Comment} |
151 | %%Proficient C Java Ruby |
152 | %%Capable C++ Python OCaml Matlab |
153 | %\cvlanguage{Ruby}{Proficient}{My goto language} |
154 | %\cvlanguage{C}{Proficient}{First language I learned} |
155 | %\cvlanguage{Java}{Capable}{Many class projects at UCSD required Java} |
156 | %\cvlanguage{Python}{Capable}{My first introduction to meta-programming, via |
157 | %function decorators, and list comprehensions} |
158 | %%\cvlanguage{C++}{Capable}{The only language I hate more than Java} |
159 | %\cvlanguage{OCaml}{Capable}{First introduction to functional programming} |
ca725625 |
160 | \section{Computer Skills} |
8d95272e |
161 | \cvcomputer{git}{client, flow, gitosis, submodules, git-svn} |
162 | {svn}{client, svnserve} |
bcb282a2 |
163 | \cvcomputer{unix cli}{bash scripting, awk, grep, find, etc.} |
8d95272e |
164 | {unit testing}{c with cutest, ruby with Test::Unit} |
3797339a |
165 | \cvcomputer{gnu buildchain}{gcc, make, gdb} |
8d95272e |
166 | {ubuntu/debian}{aptitude, debconf} |
167 | \cvcomputer{Proficient with}{Ruby, C, Java, Python} |
168 | {Capable with}{OCaml, javascript, CFML\{,script\}, XSLT} |
a828a940 |
169 | \section{Personal Projects} |
8d95272e |
170 | \cvline{py\_shell\_bot}{This was originally started because it was hard to |
171 | follow along as a teacher would type into the python repl during class. |
172 | Using this, the teacher (or any presenter) can type as they normally do and |
173 | students can follow along in an irc channel. |
174 | \httplink{github.com/ozzloy/py\_shell\_bot}} |
403227ea |
175 | \cvline{oble}{This project uses a camera to detect presence of a face. The |
176 | program aggresively blanks the screen for power saving. In addition, oble |
177 | allows one to watch in-browser videos without poking the keyboard and mouse to |
178 | prevent the screensaver. I used C++ with OpenCV libs to create this program. |
a828a940 |
179 | \httplink{gitorious.org/oble/oble}} |
8d95272e |
180 | \cvline{technical blog}{\httplink{i-am-lucky.blogspot.com/} Mostly written as |
181 | a reference for myself, this blog is an account of my technical struggles.} |
a828a940 |
182 | \cvline{imageclipper}{Having a set of labelled data helps with many |
183 | machine-learning projects. I started with someone else's code base and modified |
184 | it to make labelling easier for me. The tool helped me label data used for |
185 | training a car detector. \httplink{github.com/ozzloy/imageclipper}} |
403227ea |
186 | \cvline{this cv}{ The raw \LaTeX for generating this CV is available online at |
8d95272e |
187 | \httplink{github.com/ozzloy/cv}} |
403227ea |
188 | \end{document} |
796fbc77 |
189 | %\cvlistitem{Item 2} |
190 | %%\cvlistitem[+]{Item 3} % optional other symbol |
191 | % |
192 | %\section{Extra 2} |
193 | %\cvlistdoubleitem[\Neutral]{Item 1}{Item 4} |
194 | %\cvlistdoubleitem[\Neutral]{Item 2}{Item 5} |
195 | %\cvlistdoubleitem[\Neutral]{Item 3}{} |
f27afb42 |
196 | |
b32e1e9c |
197 | %\section{Interests} |
198 | %\cvline{rock climbing}{\small great for strength, also fights carpal tunnel} |
199 | %\cvline{bike riding}{\small cardio, started as a means to get to school} |
200 | %\cvline{device interaction}{\small oble project, face detection as human |
201 | %interaction; compiz HeadTrack project} |
8d95272e |
202 | %% end of file `daniel_watson_cv.tex'. |