-
Notifications
You must be signed in to change notification settings - Fork 0
/
cv.tex
183 lines (153 loc) · 7.58 KB
/
cv.tex
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
%!TEX TS-program = xelatex
\documentclass{nirev-cv}
\addbibresource{bibliography.bib}
\usepackage{ulem}
\begin{document}
\header{Guilherme}{DeMaio}
{Software Developer}
% example on how to place an image in exact location
%\usetikzlibrary{calc}
%\begin{tikzpicture}[remember picture,overlay]
% \node[anchor=north west,inner sep=0pt] at ($(current page.north west)-(2cm,5cm)$) {
% \includegraphics[width=4cm]{profile.jpg}
% };
%\end{tikzpicture}
% In the aside, each new line forces a line break
\begin{aside}
%\includegraphics[width=4cm]{profile.jpg}
\section{contact}
São Paulo - Brasil
~
+55 11 9 8393 2639
{\faSkype } guilherme\_nirev
\href{mailto:[email protected]}{[email protected]}
\href{https://nirev.dev}{https://nirev.dev}
\href{https://github.com/nirev}{\faGithub /nirev}
\href{https://twitter.com/nirev}{\faTwitter /nirev}
\href{https://linkedin.com/in/nirev}{\faLinkedin /nirev}
\section{languages}
native portuguese
fluent english
basic french
\section{programming}
Elixir, Java, Ruby, Javascript, C, Python,
HTML, css, bash,
Kafka, Spark, docker,
monitoring tools
\section{interests}
distributed systems, making a better world, data structures, music, martial arts, science fiction, fighting fascism
\end{aside}
\section{about me}
I've been developing software for over 10 years, from web apps to embedded platforms. \\
During this time I've come to believe:
- Empathy first, always
- Trust is key
- Less is more
On the tech side of things, I'm more of a backend/operations type, but I do dabble a bit on the frontend.
I enjoy taking part and ownership of where and how applications are deployed and monitored.
I take pride in being part of team. I enjoy giving talks and getting to know people at conferences.
I've been a team lead before, and I dislike the term "soft skills". Once you're in a position as such, those so called "soft" skills are exactly what is most important.
\section{recent experience}
\workentry
{November 2017}{*}
{Staff Engineer at Telnyx}
{Remote / Chicago - US}
{I joined Telnyx as an Elixir software developer tasked with building their new Call Control product,
which is all about abstracting away telephony and providing APIs for interfacing with telephone calls.
In a short timeframe I was the tech lead of the project, and have since been promoted to Staff Engineer. During this time I've been involved in: \\ \small
- Building, deploying, monitoring and operaring the new product \\
- Shaping the product and roadmap together with Product Managers \\
- Talking to clients to understand use cases and provide guidance integrating with the API \\
- Supporting Sales and Marketing onboarding and bringing new customers \\
- Hiring, both Elixir and frontend engineers critical to product growth
}
\workentry
{September 2015}{September 2017}
{Senior Software Engineer at XERPA}
{São Paulo - Brazil}
{I joined the company as their first employee to help build the SaaS platform tackling HR bureaucracy in Brazil.
We started from day-0 with Elixir and Phoenix on the backend, with the frontend initially in simple html/css/jquery. We eventually migrated the frontend to ClojureScript using a GraphQL API.
Among things I took part are: \\ \small
- Bootstrapped the platform using Elixir, Phoenix, PostgreSQL, Terraform and Ansible \\
- Built libraries for: Auth, ElasticSearch, image manipulation, payment gateway integration \\
%--- Authentication and Authorization \\
%--- Indexing things to ElasticSearch, as well as defining mappings \\
%--- Resizing and manipulating images \\
%--- Integrating with payment gateways \\
- Defining and prioritizing features together with product and business/sales teams. \\
- Interviewing "beta" clients to get a better understanding of the problems we needed to solve. \\
- Collaborating heavily with Customer Success team to help streamline client usage after signup \\%, focusing on quickly solving bugs and improving user experience \\
- Built a document distribution using OCR which greatly improved sales and customer satisfaction. % to identify unique numbers in PDFs
}
\workentry
{November 2012}{September 2015}
{Team Lead (Search and Analytics) at Elo7}
{São Paulo - Brazil}
{A marketplace with high traffic and transaction volume. The stack was based on Java, Ruby and Scala on AWS infrastructure. A fast paced environment, with agile practices, and focusing on delivering fast with quality. We measured and logged using StatsD, Graphite, and NewRelic, and deployed constantly. I was leading the Search and Analytics Team: a small team using Solr, Kafka and Spark to improve search and real time reports, and responsible for its infrastructure and pipeline tools.}
\subsection{past experiences}
details available upon request
\begin{smallentrylist}
\shortworkentry
{04/2012}{10/2012}
{Intern at INRIA Paris-Roquencourt}
{Paris - France}
{Research on fault-tolerance requirements for Wireless Sensor Networks macroprogramming.}
\shortworkentry
{03/2011}{09/2012}
{Undergrad Researcher at USP - CHOReOS project}
{São Paulo - Brazil}
{Research and implementation involving: choreography analysis using graph metrics,
dynamic adaptation techniques, implementation of a testing framework, and cloud computing.}
\shortworkentry
{08/2010}{02/2011}
{Software Developer (C/C++) at RR Sistema}
{Vitória/ES - Brazil}
{Porting their implementation of Brazilian DTV middleware to different platforms.
Mainly programming in C/C++, with low-level and multimedia libraries (GStreamer, DirectFB, pthreads, osal, etc),
and required knowledge of the Brazilian digital television standards.}
\shortworkentry
{01/2009}{12/2010}
{Undergrad Intern at Multimedia and Network Research Lab}
{Vitória/ES - Brazil}
{Working with the Brazilian DTV middleware; ported it for Android. }
\shortworkentry
{08/2008}{12/2008}
{Undergrad Intern at LASSY}
{University of Luxembourg - Luxembourg}
{RESIST project: developed a prototype for SOA eHealth application with multiple services.}
% \shortworkentry
% {January 2008}{March 2008}
% {Intern at CISA Trading S.A.}
% {Trading company, São Paulo/SP - Brazil}
% {Maintaining their internal software solution which manages all of the companies processes.
% The system was written in the Progress4GL language.}
\shortworkentry
{03/2007}{12/2007}
{Undergrad Intern at NINFA laboratory}
{Vitória/ES - Brazil}
{Joint project with ESCELSA, state's electric power utility, building automated classifiers
for finding frauds done by its clients. Used optimization heuristics, neural networks and clustering.
Tools developed in Java, C++ and Matlab.}
%\shortworkentry
% {09/2006}{03/2007}
% {PHP Developer at Lettera Soluções}
% {Vitória/ES - Brazil}
% {Developing and managing web sites using CSS, (x)HTML, PHP, ASP, MySQL, PostgreSQL, as well as common Linux admin tools.}
\end{smallentrylist}
\section{education}
\begin{entrylist}
\entry
{2011–2014}
{Master in Computer Science}
{University of São Paulo - Brazil}{}
\entry
{2005–2010}
{B.Sc. in Computer Science}
{Federal University of Espírito Santo - Brazil}{}
\end{entrylist}
\printbibsection{article}{article in peer-reviewed journal}
\printbibsectionpar{inproceedings}{international peer-reviewed conferences/proceedings}{notkeyword={brazil}}
\printbibsectionpar{inproceedings}{local peer-reviewed conferences/proceedings}{keyword={brazil}}
\printbibsection{misc}{other publications}
\printbibsection{report}{research reports}
\end{document}