forked from hmemcpy/cv
-
Notifications
You must be signed in to change notification settings - Fork 3
/
cv.tex
374 lines (332 loc) · 18.4 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
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
% !TEX TS-program = lualatex
\documentclass[a4paper,10pt]{article}
\usepackage[usenames,dvipsnames]{xcolor}
\usepackage{libertine}
\usepackage{fontawesome5}
\usepackage{array}
\usepackage{longtable}
\setlength{\LTpost}{0pt}
\usepackage{parskip}
\usepackage[cm]{fullpage}
% headers and footers
\usepackage{fancyhdr}
\usepackage{lastpage}
% set release number (default if not provided)
\ifdefined\releasenumber
\def\getreleaseversion{\releasenumber}
\else
\def\getreleaseversion{undefined}
\fi
% set release url (default if not provided)
\ifdefined\releaseurl
\def\getreleaseurl{\releaseurl}
\else
\def\getreleaseurl{https://github.com/maxpowis/cv/releases/}
\fi
\pagestyle{fancy}
\fancyfoot[L]{Max~Powis}
\fancyfoot[C]{Page~\thepage~of~\pageref*{LastPage}}
\fancyfoot[R]{Release \href{\getreleaseurl}{\getreleaseversion}~--~\today}
\renewcommand{\footrulewidth}{0.4pt}% default is 0pt
\fancyhead{}
\renewcommand{\headrulewidth}{0pt}
% StackOverflow-like tags
% https://tex.stackexchange.com/a/311949/142692
% https://tex.stackexchange.com/questions/387499/how-to-create-a-border-that-looks-like-a-tag
\usepackage{tikz}
\ifdefined\darkmode
\definecolor{tagbg-blue}{RGB}{120,180,240}
\definecolor{tagbg-green}{RGB}{120,240,180}
\definecolor{tagtxt-blue}{RGB}{0,0,0.1}
\definecolor{tagtxt-green}{RGB}{0,0.1,0}
\else
\definecolor{tagbg-blue}{RGB}{225,236,244}
\definecolor{tagbg-green}{RGB}{225,244,235}
\definecolor{tagtxt-blue}{RGB}{88,115,159}
\definecolor{tagtxt-green}{RGB}{87,158,122}
\fi
\newcommand{\sotag}[1]{\tikz[baseline]{\node[anchor=base, rounded corners=0.5ex, text height=1.5ex, text depth=.25ex, fill=tagbg-blue, draw=tagbg-blue, text=tagtxt-blue] {#1};}}
\newcommand{\sotagarch}[1]{\tikz[baseline]{\footnotesize\node[anchor=base, inner sep=2pt, rounded corners=0.5ex, text height=1.5ex, text depth=.25ex, fill=tagbg-green, draw=tagbg-green, text=tagtxt-green] {#1};}}
\newcommand{\sotagtech}[1]{\tikz[baseline]{\footnotesize\node[anchor=base, inner sep=2pt, rounded corners=0.5ex, text height=1.5ex, text depth=.25ex, fill=tagbg-blue, draw=tagbg-blue, text=tagtxt-blue] {#1};}}
% Helpers for adding job entries
\usepackage[english]{babel}
\usepackage[autostyle=try]{csquotes}
\usepackage[en-GB,calc,useregional,useregional=numeric,datesep=/]{datetime2}
\DTMnewdatestyle{shortmonth}{%
\renewcommand{\DTMdisplaydate}[4]{%
\DTMshortmonthname{##2} \number##1 }%
\renewcommand{\DTMDisplaydate}{\DTMdisplaydate}%
}
\newcommand{\displayshortmonth}[1]{%
{% group actions
\DTMsetdatestyle{shortmonth}%
\DTMsavedate{mydate}{#1}\DTMUsedate{mydate}%
}%
}%
\newcount\datediffdays%
\newcounter{diffdays}
\newcommand{\setdatediffdays}[2]{%
\DTMsavedate{startdate}{#1}%
\DTMsavedate{enddate}{#2}%
\DTMsaveddatediff{enddate}{startdate}{\datediffdays}%
\setcounter{diffdays}{\number\datediffdays}%
\ifnum\value{diffdays}<0
\setcounter{diffdays}{-\value{diffdays}}%
\fi
}
\newcommand{\displaydaysdiff}[2]{%
\setdatediffdays{#1}{#2}%
\thediffdays\space day\ifnum\value{diffdays}>1s
}
\usepackage{calc}
\newcounter{diffyears}
\newcounter{diffmonths}
\newcommand{\displaymonthsdiff}[2]{%
\setdatediffdays{#1}{#2}%
\setcounter{diffyears}{\value{diffdays}/\real{365.25}}%
\setcounter{diffdays}{\value{diffdays}-\value{diffyears}*\real{365.25}}%
\setcounter{diffmonths}{\value{diffdays}/\real{30.43}}%
\setcounter{diffdays}{\value{diffdays}-\value{diffmonths}*\real{30.43}}%
%
\ifnum\value{diffyears}=0
\else
\thediffyears\space year\ifnum\value{diffyears}>1s\fi
\ifnum\value{diffmonths}>0, \fi
\fi
\ifnum\value{diffmonths}=0
\else
\thediffmonths\space month\ifnum\value{diffmonths}>1s\fi
\fi
}
\newcommand{\displayyearsdiff}[2]{%
\setdatediffdays{#1}{#2}%
\setcounter{diffyears}{\value{diffdays}/\real{365.25}}%
\ifnum\value{diffyears}=0
\else
\thediffyears\space year\ifnum\value{diffyears}>1s\fi
\ifnum\value{diffmonths}>0, \fi
\fi
}
\usepackage{makecell}
\newcommand{\joblog}[7]{
\makecell[tr]{%
\textsc{\displayshortmonth{#4}}%
\setdatediffdays{#5}{\DTMfetchyear{now}-\DTMfetchmonth{now}-\DTMfetchday{now}}%
\,\faLongArrowAltRight{}%
\ifnum\value{diffdays}=0%
\textbf{\textit{Present}}%
\else%
\textsc{\displayshortmonth{#5}}%
\fi\smallskip\\%
\textit{(\displaymonthsdiff{#4}{#5})}%
}%
&\makecell[t{{p{14cm}}}]{%
\large\sffamily \textbf{#1} at \textbf{#2}, \small{#3}\smallskip\\%
\ifx&%
\else%
#7\smallskip\\%
\fi%
#6%
}\\\multicolumn{2}{c}{}\\
}
\DTMsavenow{now}
\newcommand{\joblogcurrent}[5]{\joblog{#1}{#2}{#3}{#4}{\DTMfetchyear{now}-\DTMfetchmonth{now}-\DTMfetchday{now}}{#5}}
\newcommand{\displayage}[1]{\displayyearsdiff{#1}{\DTMfetchyear{now}-\DTMfetchmonth{now}-\DTMfetchday{now}} old}
% tweak the url colors
\usepackage{hyperref}
\ifdefined\darkmode
\definecolor{linkcolor}{rgb}{0.6,0.8,1}
\else
\definecolor{linkcolor}{rgb}{0,0.2,0.6}
\fi
\hypersetup{colorlinks,breaklinks,urlcolor=linkcolor,linkcolor=linkcolor}
% nicer-looking section titles
\usepackage{titlesec}
\titleformat{\section}{\Large\scshape\raggedright}{}{0em}{}[\titlerule]
\titlespacing{\section}{%
0pt}{%left margin
1em}{%space before (vertical)
3pt}%space after (horizontal)
\renewcommand{\arraystretch}{1.3}
\ifdefined\darkmode
\definecolor{darkergray}{gray}{0.15}
\pagecolor{darkergray}
\color{white}
\fi
\begin{document}
\par{
\centering{
\Huge \textsc{Max Powis}\par
\large \textsc{Data Expert}\par
\small \textsc{(\displayage{1982-11-07})}\par
\textsc{Data is gold but often looks awful. I am passionate about using technology\linebreak
to making it accessible and beautifully shaped to maximize business efficiency.}\par
}
\bigskip\par
}
\hrule
\vspace{0.5em}
\begin{center}
\newcolumntype{x}[1]{>{\centering\arraybackslash}m{#1}}
\begin{tabular}{ cx{14em} cx{14em} cx{14em} }
\textsc{Contact}
& \textsc{Website}
& \textsc{Socials}\\
\faEnvelope[regular]{} \href{mailto:[email protected]}{[email protected]}
& \faGlobe{} \href{https://max.pow.is}{max.pow.is}
& \faLinkedin{} \href{https://www.linkedin.com/in/maxpowis/}{linkedin}\\
\faMobile*{} \href{tel:0032499673767}{+32 499 67 37 67}
& \faGlobe{} \href{https://www.maxpowx.com}{maxpowx.com}
& \faGithub{} \href{https://github.com/maxpowis}{github} \faTwitter{} \href{https://twitter.com/maxpowis}{twitter}
\end{tabular}
\end{center}
\section{Summary}
\begin{tabular}{p{0.97\textwidth}}
I am passionate about data and technology.
My deepest satisfaction lies in delivering highly efficient and modular solutions relying on strong data models
for reuse across various data disciplines.\smallskip
Throughout my career, I have endorsed various positions involving data governance, data architecture, data modeling (data vaulting,
dimensional modeling, unified star schemas, \ldots), data integration, system integration, reference data management and business
analytics (reporting \& dashboarding).\medskip
Interests: \sotag{data-modeling} \sotag{data-architecture} \sotag{data-integration} \sotag{data-warehouse-automation}
\end{tabular}
\section{Companies I have worked for}
\begin{longtable}{p{3.2cm}|p{14.1cm}}
\joblogcurrent{Freelance Data Expert}{maxPowX}{Brussels, BE}{2019-01-07}{%
Consultant in data architecture, data modeling, data governance, data integration, system integration, reference data %
and business analytics.%
}{}
\joblog{Data Vault \& BI Expert}{dFakto}{Brussels, BE}{2012-10-01}{2019-01-04}{%
Having deep interest in data modeling and data management, I have been devoted to smoothening business processes %
and providing governance bodies with reliable information through advanced data integration techniques.\\%
Drove the organization towards more agile delivery through methodology mashups fit for consulting firms.%
}{}
\joblog{EAI Engineer}{Accenture Technology Solutions}{Brussels, BE}{2006-11-27}{2012-09-30}{
Integrated enterprise applications (EAI) for major companies active in the telecommunication and banking industries.\\%
Extensive experience with offshore application delivery centers in Bratislava and Bangalore.\\%
Took part in the application design, implementation, test and delivery management of the Java technology based products.%
}{}
\end{longtable}
\section{Benches I have scratched}
\begin{longtable}{p{3.2cm}|p{14.1cm}}
\joblog{Post-bachelor E-Design}{HoGent\gape{\footnotemark[1]}}{Aalst, BE}{2005-09-01}{2006-06-30}{%
Coursework included Multimedia Authoring, e-Business, Web design \& dev, CMS and more.\\%
Also a great opportunity to get comfortable at speaking Dutch.%
}{}
\joblog{Bachelor of Computer Science option Management}{IESN\gape{\footnotemark[2]}}{Namur, BE}{2002-09-01}{2005-06-30}{%
Coursework included UML, Java, C, C++, C\#, Cobol, Assembler, data modeling, project management and much more.%
}{}
\end{longtable}
\footnotetext[1]{Hogeschool Gent department Bedrijfskunde}
\footnotetext[2]{Haute école d’Enseignement Supérieur de Namur}
\newpage
\section{Missions I have carried out}
\begin{longtable}{p{3.2cm}|p{14.1cm}}
\joblogcurrent{Data Governance Expert}{Beverage Corporation}{Salzburg, AT}{2024-03-01}
{Developed a roadmap and PoC for data lineage, demonstrating implementation with ATLAS API's/Python, engaging key stakeholders, and laying the groundwork for a broader initiative.}
{\sotagarch{Data Governance Platform} \sotagtech{Azure Purview} \sotagtech{SAP BW} \sotagtech{Snowflake} \sotagtech{PowerBI}}
\joblogcurrent{Data Expert}{SaaS Company}{Flemish region, BE}{2023-02-01}
{Defined the vision, architecture and lead the implementation of the modern data platform, operating model and data product frameworks with their principles, guidelines and standards.\\%
Defined the enterprise concept map and domain models to guide the logical design and implementation of the metrics in PowerBI dashboards following established principles.\\%
Aligned with business experts to find consensus on a corporate-wide definition of key business metrics.}
{\sotagarch{Data Platform Architecture} \sotagtech{Snowflake} \sotagtech{dbt cloud} \sotagtech{Fivetran} \sotagtech{Terraform Cloud} \sotagtech{GitHub} \sotagtech{Azure Keyvault} \sotagtech{PowerBI}}
\joblog{Data Governance Lead Architect}{Portuguese Telco}{Lisbon, PT}{2022-05-01}{2022-12-15}
{Architected the 9 core Data Governance capabilities and functions supporting the Data Mesh strategy of the organization\\%
Played the Data Governance product owner role, defining and orchestrating the product backlog for implementation across delivery sprints\\%
Technical lead with hands-on terraform scripts and Collibra workflow implementations}
{\sotagarch{Data Mesh} \sotagtech{Collibra} \sotagtech{Google BigQuery} \sotagtech{Google Cloud Engine} \sotagtech{Google Dataplex DQ} \sotagtech{Terraform} \sotagtech{Flowable}}
\joblog{Data Governance Expert}{German Telco}{Düsseldorf, DE}{2022-04-01}{2022-11-15}
{Define the architectural vision for a transition towards a Hybrid Data Governance Platform (involving multiple data governance technology components)\\%
Plan the journey towards introducing Collibra DIP as a new component of the Hybrid Data Governance Platform\\%
Build the concept map within the Data Governance teams to be used as a reference for all Data Governance capability implementations}
{\sotagarch{Data Governance Architecture} \sotagtech{Collibra} \sotagtech{AB Initio MHub} \sotagtech{Google Cloud Platform}}
\joblog{Data Governance Manager}{Belgian Telco}{Brussels, BE}{2019-01-11}{2022-02-28}
{Responsible to define the Data Model governance capability functions and implementation guidelines towards a new, better way of working.\\%
Drove the glossary capability implementation for the BI Community from design to delivery, including awareness and training sessions for 130+ people.\\%
Delivered a real-time Business Capability Service integration of the glossary within a BI DataSet Development %
Framework to support business term-driven documentation of data assets at design time.}
{\sotagtech{Collibra} \sotagtech{REST API} \sotagtech{Swagger} \sotagtech{SOAP UI}}
\joblog{Data Vault Architect}{Aerospace Manufacturing C°}{Brussels, BE}{2018-03-01}{2019-01-31}
{Designed, engineered and delivered a full automated agile data management platform in 4 months. The platform included:
\begin{itemize}
\item connectors to 3 source systems + the master data repository
\item data integration and historization across 80+ business concepts of the data vault
\item a unified star schema for information delivery
\item master data management integrated with Excel for business power-users
\item responsive dashboards with enhanced drill-down capabilities
\end{itemize}
The Solution served 3 use cases such as on-time delivery, supply chain issue tracking and task pointing performance.}
{\sotagarch{Data Vault} \sotagarch{Star Schema} \sotagtech{SQL Server} \sotagtech{(SQL Server) Master Data Services}
\sotagtech{Docker} \sotagtech{Datavault Builder} \sotagtech{QlikSense} \sotagtech{PowerShell} \sotagtech{SAP HighSEA}}
\joblog{Data Vault Architect}{Insurance C°}{Brussels, BE}{2014-11-01}{2018-03-31}
{Designed, engineered and delivered a data vault and various role-based dashboards serving the needs of 120+ IT project management stakeholders.\\%
Stakeholder roles included program managers, project managers, resource management, financial controllers, and more}
{\sotagarch{Data Vault} \sotagarch{Star Schema} \sotagtech{SQL Server} \sotagtech{Qlik View} \sotagtech{SSIS}
\sotagtech{C\#\,\symbol{46}NET} \sotagtech{SQL Agent}}
\joblog{Solution Architect \& Engineer}{Non-profit Organisation}{Brussels, BE}{2013-07-01}{2013-08-01}
{Pragmatic solution for accounting quality controls and budgeting dashboards. Blended in-house tools and smart methods.}
{\sotagtech{MS Access} \sotagtech{Qlik View} \sotagtech{Business Objects} \sotagtech{VBScript}}
\joblog{Data Vault Architect}{International Bank}{Brussels, BE}{2012-10-01}{2013-07-01}
{My first encounters with data vaulting. Fully automated and integrated in the enterprise application and security architecture}
{\sotagtech{SQL Server} \sotagtech{SSIS} \sotagtech{T-SQL} \sotagtech{Business Objects} \sotagtech{VBA} \sotagtech{C\#} \sotagtech{VBScript} \sotagtech{Control-M}}
\joblog{EAI -- Senior Application Designer}{International Bank}{Brussels, BE}{2011-06-15}{2012-09-30}
{Introduced and implemented best practices in application delivery management. %
Designed interface agreements, functional and technical documents for application components in scope of the delivery. %
Developed stand-alone java components and supported development of WMB and WAS GUI components.}
{\sotagtech{IBM WMB} \sotagtech{IBM MQ} \sotagtech{IBM WAS} \sotagtech{Oracle DB} \sotagtech{Oracle PL/SQL}
\sotagtech{Java} \sotagtech{Hibernate} \sotagtech{Spring} \sotagtech{Maven}}
\joblog{ESB Performance Team}{Bank}{Calgary, CA}{2011-03-01}{2011-06-15}
{Audited and diagnosed the performance of the ESB layer interfacing the SAP systems. %
Fixed issues at cluster, OS, JVM, application, framework and component levels and pointed out abnormal response times regarding exposed SAP services.}
{\sotagtech{webMethods Integration Server} \sotagtech{wM Developer} \sotagtech{wM Insight}
\sotagtech{Java} \sotagtech{JMS} \sotagtech{IBM DB2} \sotagtech{IBM AIX HA Clusters} \sotagtech{F5}
\sotagtech{CA Wily IntroScope}}
\joblog{EAI -- Technical Architect}{Global Telco}{Strasbourg, FR}{2010-11-01}{2011-03-01}
{Provided counsel in the fields of infrastructure, application frameworks and platform migrations.}
{\sotagtech{webMethods Developer} \sotagtech{SOA/P} \sotagtech{BPM/N} \sotagtech{8550} \sotagtech{PKI} \sotagtech{VBA}}
\joblog{EAI -- Application Designer}{Global Telco}{Brussels, BE}{2006-11-01}{2010-10-01}
{Participated in several release cycles including release management, functional/technical design, test condition and test script creation, implementation, assembly/integration tests, acceptance testing support and move to production. %
Supported the offshore development team during build phase. Managed incidents, defects and maintenance releases.}
{\sotagtech{webMethods Integration Server, Developer, Modeler \& Broker} \sotagtech{SOA/P} \sotagtech{BPM/N} \sotagtech{Unix} %
\sotagtech{Oracle DB} \sotagtech{Oracle PL/SQL} \sotagtech{BEA WebLogic} \sotagtech{Java} \sotagtech{STRUTS}}
\joblog{Intern, Developer}{Edesign}{Ophain, BE}{2005-02-01}{2005-05-01}
{Study, design and implementation of a \enquote{PermissionService} in the core company's product.}
{\sotagtech{Java} \sotagtech{PHP} \sotagtech{SOA}}
\end{longtable}
\section{Data \& Technology Proficiency}
\begin{tabular}{r|l}
\textsc{Product management:}& Scrum -- Kanban -- Jira -- Confluence\\
\textsc{Data Modeling:}& Conceptual -- ER/3NF -- Data Vault -- Dimensional (\faStar[regular]{} \& \faSnowflake[regular]{}) -- Canonical\\
\textsc{RDBMS:}& Snowflake -- SQL Server -- Oracle -- MariaDB/MySQL -- PostgreSQL\\
\textsc{Documents:}& JSON -- JSONSchema -- YAML -- XML -- XSD -- CSV -- DTD -- HTML\\
\textsc{DWH Automation:}& Data Vault Builder, WhereScape RED\\
\textsc{ETL:}& SSIS -- Talend\\
\textsc{Data Visualization:}& QlikSense -- QlikView -- Business Objects\\
\textsc{API:}& REST -- RAML -- Swagger -- Postman -- SOAP -- SoapUI -- WSDL\\
\textsc{IDE:}& Visual Studio -- VS Code -- Eclipse\\
\textsc{Version Control:}& Git -- GitHub -- GitLab\\
\textsc{O/S / Virtualization:}& Windows -- Linux -- vSphere -- Docker -- Terraform\\
\textsc{Scripting:}& Bash -- PowerShell -- VBScript\\
\textsc{Programming:}& Python -- C\# -- Java -- LaTeX\\
\textsc{CI/CD:}& Github releases, packages, environments \& actions\\
\end{tabular}
\section{Languages}
\begin{center}
\newcolumntype{x}[1]{>{\centering\arraybackslash}m{#1}}
\begin{tabular}{ cx{14em} cx{14em} cx{14em} }
\textsc{French}
& \textsc{English}
& \textsc{Dutch}\\
Native
& Superior
& Intermediate\\
\end{tabular}
\end{center}
\section{Specializations}
\begin{tabular}{rl}
\textsc{Courses:}
&Collibra Expert I -- Online (Credential ID \texttt{\scriptsize{CELIC-20190131-1072}})\\
&Certified Data Vault 2 Practitioner (CDVP2) -- Dan Lindstedt (\href{https://max.pow.is/assets/5_2_12900_1435331244_CDVP2_Certificate.pdf}{certificate})\\
&Business Information using RED on SQL Server -- WhereScape
\end{tabular}
\end{document}