diff --git a/IMG_1312.JPG b/IMG_1312.JPG new file mode 100644 index 0000000..4e223dc Binary files /dev/null and b/IMG_1312.JPG differ diff --git a/README.md b/README.md new file mode 100644 index 0000000..ee8f3ed --- /dev/null +++ b/README.md @@ -0,0 +1,97 @@ +# AltaCV, yet another LaTeX CV/Résumé class + +v1.3.2 (17 May 2020), by LianTze Lim (liantze@gmail.com) + +_Sample file with new paracol layout added on 2 February 2020_ + +(Thanks to [Nur](https://github.com/nurh) for the name.) + +It all started with this: + +[](https://twitter.com/Leonduck/status/764281546408923136) + +Leonardo was talking about a [résumé of Marissa Mayer that Business Insider put together](http://www.businessinsider.my/a-sample-resume-for-marissa-mayer-2016-7/) using [enhancv.com](https://enhancv.com). +I _knew_ I had to do something about it. And so AltaCV was born. + +## Samples + +This is how the re-created résumé looks like ([view/open on Overleaf](https://www.overleaf.com/latex/examples/recreating-business-insiders-cv-of-marissa-mayer-using-altacv/gtqfpbwncfvp)): + +Marissa Mayer's résumé, re-created with AltaCV + +Though if you're creating your own CV/résumé, you'd probably prefer using the basic template ([view/open on Overleaf](https://www.overleaf.com/latex/templates/altacv-template/trgqjpwnmtgv)): + +sample barebones AltaCV template + + +## Requirements and Compilation + +* pdflatex + biber + pdflatex +* AltaCV uses [`fontawesome`](http://www.ctan.org/pkg/fontawesome) and [`academicons`](http://www.ctan.org/pkg/academicons); they're included in both TeX Live 2016 and MikTeX 2.9. +* Loading `academicons` is optional: enable it by adding the `academicons` option to `\documentclass`. +* Use the `normalphoto` option to get normal (i.e. non-circular) photos. +* As of v1.2 you can add multiple photos on the left or right: `\photoL{2cm}{logo1}` and `\photoR{2.5cm}{logo2,photo}`. (`\photo` will work like `\photoR`.) Separate your image filenames with commas _without_ spaces. +* Use the `ragged2d` option to activate hyphenations while keeping text left-justified; line endings will thus be less jagged and more aesthetically pleasing. +* Can now be compiled with pdflatex, XeLaTeX and LuaLaTeX! +* However if you're using `academicons`, you _must_ use either XeLaTeX or LuaLaTeX. If the doc then compiles but the icons don't show up in the output PDF, try compiling with LuaLaTeX instead. +* The samples here use the [Lato](http://www.latofonts.com/lato-free-fonts/) font. Feel free to use a different typeface package instead—often a different typeface will change the entire CV's feel. + + +## Example Files + +### `sample.tex` + +(You may prefer to use `sample-alt.tex` instead; please read both sections before proceeding.) + +This is the original sample template file. The right sidebar is actually a _marginpar_, so it doesn't support footnote and cannot automatically break across pages if it's too long. You would need to split your right sidebar contents into separate files e.g. `p1sidebar.tex` and `p2sidebar.tex`, and insert them as the optional argument of the `\cvsection{...}` that you want to align them with: + +```latex +\cvsection[p1sidebar]{Experience} +... +... END OF FIRST PAGE OF YOUR CV ... +\cvsection[page2sidebar]{Publications} +... +``` + +This assumes that the next page's main column would start immediately with a `\cvsection`, so that the top of your right sidebar contents also appear at the top of the page. Now if the _next_ page doesn't start with a `\cvsection` but you'd still like to add a sidebar, then use this command on the _current_ page to add it. The optional argument lets you pull up the sidebar a bit so that it looks aligned with the top of the main column: + +```latex +\addnextpagesidebar[-1ex]{page3sidebar} +``` + +If you want to change the left and right columns' widths, you'll need to tinker with the `right` (distance from paper's right edge until the main column's right edge) and `marginparwidth` (width of the right sidebar) options in the `\geometry` line. For example, to make the right sidebar wider by 2cm, you could use + +```latex +%% original was right=9cm, marginparwidth=6.8cm +\geometry{left=1cm,right=11cm,marginparwidth=8.8cm,marginparsep=1.2cm,top=1cm,bottom=1cm} +``` +as well as doing a bit of arithmetic when you're making the header to get it full-width, i.e. reducing the sidebar by 2cm and extending the main column by 2cm. + +```latex +\begin{adjustwidth}{}{-10cm} %% original was -8cm +\makecvheader +\end{adjustwidth} +``` + +### `sample-alt.tex` [ADDED 2 FEBRUARY 2020] +Many users have overlooked the optional argument of `\cvsection` to insert the right sidebar contents, and often confused that the right sidebar doesn't automatically break across pages. This new layout uses the `paracol` package for typesetting the left and right columns that _can_ break across pages. It also makes changing the column widths easier: + +```latex +%% Set the left/right column width ratio to 6:4. +\columnratio{0.6} + +% Start a 2-column paracol. Both the left and right columns will automatically +% break across pages if things get too long. +\begin{paracol}{2} +\cvsection{Experience} +... +... END OF LEFT COLUMN CONTENTS ... + +% Now switch to the right column. +\switchcolumn +\cvsection{Education} +... +...END OF RIGHT COLUMN CONTENTS ... +\end{paracol} +``` +You can also use `\swithcolumn*` for "synchronising" the columns, as well as other commands from the `paracol` package. See the [`paracol` package documentation](http://texdoc.net/pkg/paracol) for further details. diff --git a/altacv.cls b/altacv.cls new file mode 100644 index 0000000..4122a45 --- /dev/null +++ b/altacv.cls @@ -0,0 +1,437 @@ +%%%%%%%%%%%%%%%%% +% This is altacv.cls (v1.3.2, 17 May 2020) written by +% LianTze Lim (liantze@gmail.com). +% This fork/modified version has been made by Nicolás Omar González Passerino (nicolas.passerino@gmail.com, 15 Oct 2020) +% +%% It may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either version 1.3 +%% of this license or (at your option) any later version. +%% The latest version of this license is in +%% http://www.latex-project.org/lppl.txt +%% and version 1.3 or later is part of all distributions of LaTeX +%% version 2003/12/01 or later. +%% +%% +% Contributions: +% - https://github.com/liantze/AltaCV Original template +% - https://github.com/akreuzer Added ragged2e option (5 Nov 2018) +% - https://github.com/stefanogermano Fixed bad boxes and undefined font shape (July 2018) +% - https://github.com/foohyfooh Fixed blank spaces in \cvevent and bad link in README.md (June 2018) + +%%%%%%%%%%%%%%%% +\NeedsTeXFormat{LaTeX2e}[1995/12/01] +\ProvidesClass{altacv}[2020/05/17 AltaCV v1.3.2, yet another alternative class for a resume/curriculum vitae.] + +%% v1.1: Optionally load academicons +\newif\if@academicons +\DeclareOption{academicons}{\@academiconstrue} +%% v1.1.3: Choice of round/square photo +\newif\if@normalphoto +\DeclareOption{normalphoto}{\@normalphototrue} +\DeclareOption*{\PassOptionsToClass{\CurrentOption}{extarticle}} +\newif\if@raggedtwoe +\DeclareOption{ragged2e}{\@raggedtwoetrue} +%% v1.3: load hyperref for clickable hyperlinks +\newif\if@withhyper +\DeclareOption{withhyper}{\@withhypertrue} +\ProcessOptions\relax + +\LoadClass{article} +\RequirePackage[a-1b]{pdfx} +\RequirePackage[margin=2cm]{geometry} +\RequirePackage[fixed]{fontawesome5} +\RequirePackage{ifxetex,ifluatex} +\RequirePackage{scrlfile} +\RequirePackage{xparse} +\RequirePackage{markdown} +\usepackage{setspace} + +%% v1.1.5: added for convenience +\newif\ifxetexorluatex +\ifxetex + \xetexorluatextrue +\else + \ifluatex + \xetexorluatextrue + \else + \xetexorluatexfalse + \fi +\fi + +\ifxetexorluatex + \RequirePackage{fontspec} +\else + %% v1.3.2 attempts to make ligatures + %% copy-paste as normal characters + \RequirePackage{cmap} + \RequirePackage[utf8]{inputenc} + \RequirePackage[T1]{fontenc} + \input{glyphtounicode} + \pdfglyphtounicode{f_f}{FB00} + \pdfglyphtounicode{f_f_i}{FB03} + \pdfglyphtounicode{f_f_l}{FB04} + \pdfglyphtounicode{f_i}{FB01} + \pdfgentounicode=1 +\fi + +%% v1.1: Optionally load academicons +%% v1.1.5: Handle different versions of academicons +\if@academicons + \ifxetexorluatex + \RequirePackage{fontspec} + %% academicons in TL2018 doesn't require + %% Academicons to be installed in OS fonts + %% so can be loaded directly + \@ifl@t@r\fmtversion{2018/04/01}{% + \RequirePackage{academicons} + }{% + % TL2017 + \@ifl@t@r\fmtversion{2017/04/01}{% + \@ifpackagelater{academicons}{2018/03/01}{% + \RequirePackage{academicons} + }{% + \let\ori@newfontfamily\newfontfamily% + \renewcommand{\newfontfamily}[2]{} + \RequirePackage{academicons} + \let\newfontfamily\ori@newfontfamily + \newfontfamily{\AI}{academicons.ttf} + } + }{% TL2016 requires the package to be loaded before + % the version can be checked. Only added because + % Overleaf v1 still runs TL2016; will be removed + % when v1 is completely retired. + \let\ori@newfontfamily\newfontfamily% + \renewcommand{\newfontfamily}[2]{} + \RequirePackage{academicons} + \let\newfontfamily\ori@newfontfamily + \newfontfamily{\AI}{academicons.ttf} + } + } + \else + \ClassError{AltaCV}{academicons unsupported by latex or pdflatex. Please compile with xelatex or lualatex}{Please compile with xelatex or lualatex to use the academicons option} + \fi +\fi + +\if@raggedtwoe + \RequirePackage[newcommands]{ragged2e} +\fi + +\if@withhyper + \AtBeginDocument{% + \RequirePackage{hyperref} + \hypersetup{hidelinks} + \urlstyle{same} + } +\fi + +\RequirePackage{xcolor} + +\colorlet{accent}{blue!70!black} +\colorlet{emphasis}{black} +\colorlet{heading}{black} +\colorlet{headingrule}{black} +\colorlet{subheading}{emphasis} +\colorlet{body}{black!80!white} +\colorlet{name}{heading} +\colorlet{tagline}{accent} +\newcommand{\itemmarker}{{\small\textbullet}} +\newcommand{\ratingmarker}{\faCircle} + +\RequirePackage{tikz} +\usetikzlibrary{arrows} +\RequirePackage[skins]{tcolorbox} +\RequirePackage[inline]{enumitem} +\setlist{leftmargin=*,labelsep=0.5em,nosep,itemsep=0.25\baselineskip,after=\vspace{0.25\baselineskip}} +\setlist[itemize]{label=\itemmarker} +\RequirePackage{graphicx} +\RequirePackage{etoolbox} +\RequirePackage{dashrule} +\RequirePackage{multirow,tabularx} +\RequirePackage{changepage} +% \RequirePackage{marginfix} + +\setlength{\parindent}{0pt} +\newcommand{\divider}{\textcolor{body!30}{\hdashrule{\linewidth}{0.6pt}{0.5ex}}\medskip} + +\newenvironment{fullwidth}{% + \begin{adjustwidth}{}{\dimexpr-\marginparwidth-\marginparsep\relax}} + {\end{adjustwidth}} + +%% v1.3.1 \detokenize will break UTF-8 in pdflatex +%% Using alternative from https://tex.stackexchange.com/a/530911/226 +\newcommand{\utffriendlydetokenize}[1]{% +\scantokens{% + \catcode`\_=12% +% \catcode`\^=12% +% \catcode`\{=12% +% \catcode`\}=12% + \catcode`\&=12% + \catcode`\$=12% + \catcode`\#=12% + \catcode`\~=12% +% \catcode`\\=12% + {#1}% +}% +} +%% v1.3: Incorporating hyperlinks +%% v1.3.1: using \unfriendlydetokenize to avoid +%% breaking unicode +\ExplSyntaxOn +\NewDocumentCommand{\printinfo}{m m o}{% + \IfNoValueTF{#3}{% + \mbox{\textcolor{accent}{\normalfont #1}~\utffriendlydetokenize{#2}\hspace{2em}}% + }{% + \if@withhyper% + \mbox{\textcolor{accent}{\normalfont #1}~ + \href{#3}{\utffriendlydetokenize{#2}}\hspace{2em}} + \else% + \ClassWarning{Please specify [withhyper] option to enable hyperlinks. Printing out full hyperlink prefix #1 for now.}% + \mbox{\textcolor{accent}{\normalfont #1}~{\utffriendlydetokenize{#3#2}}\hspace{2em}}% + \fi% + }% +}% + +%% v1.3: Exploring convenient creation of fields +\NewDocumentCommand{\NewInfoField}{m m o}{% + \IfNoValueF{#3}{\csdef{#1 hyperprefix}{#3}}% + \csdef{#1 symbol}{#2}% + \csdef{#1}##1{% + \if@withhyper + \IfNoValueTF {#3} + {\printinfo{\csuse{#1 symbol}}{##1}}% + {\printinfo{\csuse{#1 symbol}}{##1}[\csuse{#1 hyperprefix}##1]}% + \else + \printinfo{\csuse{#1 symbol}}{##1}% + \fi% + } +} +\ExplSyntaxOff + +\newcommand{\name}[1]{\def\@name{#1}} +\newcommand{\tagline}[1]{\def\@tagline{#1}} +\newcommand{\personalinfo}[1]{\def\@personalinfo{#1}} +\NewInfoField{email}{\faAt}[mailto:] +\NewInfoField{mailaddress}{\faEnvelope} +\NewInfoField{phone}{\faPhone} +\NewInfoField{homepage}{\faGlobe}[https://] +\NewInfoField{twitter}{\faTwitter}[https://twitter.com/] +\NewInfoField{linkedin}{\faLinkedin}[https://linkedin.com/in/] +\NewInfoField{github}{\faGithub}[https://github.com/] +\NewInfoField{orcid}{\aiOrcid}[https://orcid.com/] +\NewInfoField{location}{\faMapMarker} +% Fork: New optional options added for dev and medium accounts +\NewInfoField{dev}{\faDev}[https://dev.to/] +\NewInfoField{medium}{\faMedium}[https://medium.com/@] + +% v1.2: Support for multiple photos +\newlength{\altacv@photos@width} +\newlength{\altacv@photo@diam@left} +\newlength{\altacv@photo@diam@right} +\def\altacv@left@photos{} +\def\altacv@right@photos{} + +\newcommand{\@makeaphoto}[2]{% + \begin{minipage}{#1}% + \if@normalphoto + \includegraphics[width=\linewidth]{#2} + \else +% Fork: The photo image has modified to include a border around it, which color is aligned to document's theme + \tikz\filldraw[color=headingrule, fill overzoom image={#2}, ultra thick](-1,0) circle[radius=0.5\linewidth]; + \fi% + \end{minipage}% +} + +% Fork: Horizontal space changed from 1ex to 6,5ex to align photo container width to smaller column width (25%) +\newcommand{\altacv@add@photo@left}[1]{% + \appto{\altacv@left@photos}{% + \@makeaphoto{\altacv@photo@diam@left}{#1}\hspace{6,5ex}% + }% + \addtolength{\altacv@photos@width}{\altacv@photo@diam@left}% + \addtolength{\altacv@photos@width}{1ex}% +} +\newcommand{\altacv@add@photo@right}[1]{% + \appto{\altacv@right@photos}{% + \@makeaphoto{\altacv@photo@diam@right}{#1}\hspace{6,5ex}% + }% + \addtolength{\altacv@photos@width}{\altacv@photo@diam@right}% + \addtolength{\altacv@photos@width}{1ex}% +} +\newcommand{\photoL}[2]{% + \setlength{\altacv@photo@diam@left}{#1}% + \forcsvlist{\altacv@add@photo@left}{#2}% +} +\newcommand{\photoR}[2]{% + \setlength{\altacv@photo@diam@right}{#1}% + \forcsvlist{\altacv@add@photo@right}{#2}% +} +\let\photo\photoR + +\newcommand{\namefont}{\Huge\bfseries} +\newcommand{\taglinefont}{\large\bfseries} +\newcommand{\personalinfofont}{\footnotesize\bfseries} +\newcommand{\cvsectionfont}{\LARGE\bfseries} +\newcommand{\cvsubsectionfont}{\large\bfseries} + +\newcommand{\makecvheader}{% + \begingroup + \altacv@left@photos\hfill% + \begin{minipage}{\dimexpr\linewidth-\altacv@photos@width}% + \raggedright% + {\namefont\color{name}\MakeUppercase{\@name}\par} + \medskip + {\taglinefont\color{tagline}\@tagline\par} + \medskip + {\personalinfofont\@personalinfo\par} + \end{minipage}\hfill% + \altacv@right@photos\par% + \endgroup\medskip +} + +\renewenvironment{quote}{\color{accent}\itshape\large}{\par} + +% Fork: Two bigskip tags added for better section separation +\newcommand{\cvsection}[2][]{% + \begin{spacing}{1.3} + \bigskip + \bigskip + \ifstrequal{#1}{}{}{\marginpar{\vspace*{\dimexpr1pt-\baselineskip}\raggedright\input{#1}}}% + {\color{heading}\cvsectionfont\MakeUppercase{#2}}\\[-1ex]% + {\color{headingrule}\rule{\linewidth}{2pt}\par}\medskip + \end{spacing} +} + +\newcommand{\cvsubsection}[1]{% + \smallskip% + {\color{subheading}\cvsubsectionfont{#1}\par}\medskip +} + +% v1.1.4: fixes inconsistent font size +% Fork: structure modified to include change title, company name, start/end dates and work location (only a string) +\newcommand{\cvevent}[4]{% + {\large\color{emphasis}#1} + \ifstrequal{#2}{}{}{\large{\color{accent}#2}} + \par\medskip\normalsize + \ifstrequal{#3}{}{}{{\small\makebox[0.5\linewidth][l]{\color{accent}\faCalendar\color{emphasis}~#3}}} + \ifstrequal{#4}{}{}{{\small\makebox[0.5\linewidth][l]{\color{accent}\faMapMarker\color{emphasis}~#4}}}\par + \medskip\normalsize +} + +\newcommand{\cvachievement}[3]{% + \begin{tabularx}{\linewidth}{@{}p{2em} @{\hspace{1ex}} >{\raggedright\arraybackslash}X@{}} + \multirow{2}{*}{\Large\color{accent}#1} & \bfseries\textcolor{emphasis}{#2}\\ + & #3 + \end{tabularx}% + \smallskip +} + +% Fork: Tags separation partially achieved, missing vertical spaces consistency for now +\newcommand{\cvtag}[1]{% + \tikz[baseline]\node[anchor=base,draw=body,rounded corners,inner xsep=1ex,inner ysep=0.75ex,text height=1.5ex,text depth=.25ex]{#1}; + \vspace{0.25ex} +} + +\newcommand{\cvskill}[2]{% + \textcolor{emphasis}{\textbf{#1}} + \foreach \x in {1,...,5}{ + \SPACE{\IFNUMGREATER{\X}{#2}{\color{body}}{\color{accent}}\ratingmarker} + }\par +} + +% Fork: Tag added for languages rating, avoiding star/button/progress bar previous ideas, I made a simpler and more accurate representation using a single string, which will be colored to be oustanding +\newcommand{\cvlang}[2]{% + \textcolor{emphasis}{\textbf{#1: }} + \textcolor{accent}{\textbf{#2}} +} + +% Adapted from @Jake's answer at http://tex.stackexchange.com/a/82729/226 +\newcommand{\wheelchart}[4][0]{% + \begingroup\centering + \def\innerradius{#3}% + \def\outerradius{#2}% + % Calculate total + \pgfmathsetmacro{\totalnum}{0}% + \foreach \value/\colour/\name in {#4} {% + \pgfmathparse{\value+\totalnum}% + \global\let\totalnum=\pgfmathresult% + }% + \begin{tikzpicture} + + % Calculate the thickness and the middle line of the wheel + \pgfmathsetmacro{\wheelwidth}{\outerradius-\innerradius} + \pgfmathsetmacro{\midradius}{(\outerradius+\innerradius)/2} + \pgfmathsetmacro{\totalrot}{-90 + #1} + + % Rotate so we start from the top + \begin{scope}[rotate=\totalrot] + + % Loop through each value set. \cumnum keeps track of where we are in the wheel + \pgfmathsetmacro{\cumnum}{0} + \foreach \value/\width/\colour/\name in {#4} { + \pgfmathsetmacro{\newcumnum}{\cumnum + \value/\totalnum*360} + + % Calculate the percent value + \pgfmathsetmacro{\percentage}{\value/\totalnum*100} + % Calculate the mid angle of the colour segments to place the labels + \pgfmathsetmacro{\midangle}{-(\cumnum+\newcumnum)/2} + + % This is necessary for the labels to align nicely + \pgfmathparse{ + (-\midangle>180?"west":"east") + } \edef\textanchor{\pgfmathresult} + \pgfmathparse{ + (-\midangle>180?"flush left":"flush right") + } \edef\textalign{\pgfmathresult} + \pgfmathsetmacro\labelshiftdir{1-2*(-\midangle<180)} + + % Draw the color segments. Somehow, the \midrow units got lost, so we add 'pt' at the end. Not nice... + \filldraw[draw=white,fill=\colour] (-\cumnum:\outerradius) arc (-\cumnum:-(\newcumnum):\outerradius) -- + (-\newcumnum:\innerradius) arc (-\newcumnum:-(\cumnum):\innerradius) -- cycle; + + % Draw the data labels + \draw [*-,thin,emphasis] node [append after command={(\midangle:\midradius pt) -- (\midangle:\outerradius + 1ex) -- (\tikzlastnode)}] at (\midangle:\outerradius + 1ex) [xshift=\labelshiftdir*0.5cm,inner sep=1ex, outer sep=0pt, text width=\width,anchor=\textanchor,align=\textalign,font=\small,text=body]{\name}; + % Set the old cumulated angle to the new value + \global\let\cumnum=\newcumnum + } + \end{scope} +% \draw[gray] (0,0) circle (\outerradius) circle (\innerradius); + \end{tikzpicture}\par + \endgroup +} + +% Fork: CV reference tag has been modified to accept only linkedin accounts instead mail. It can be modified easily in case you need to display other type of contact +\newcommand{\cvref}[2]{% + \textcolor{emphasis}{\textbf{#1}}\par + \begin{description}[font=\color{accent},style=multiline,leftmargin=1.35em,align=left] + \item[\small\normalfont\faLinkedin]\href{https://linkedin.com/in/#2}{#2} + \end{description} +} + +\newcommand{\cvrepo}[2]{ + \textcolor{accent}{\href{#2}{#1}} +} + +\newenvironment{cvcolumn}[1]{\begin{minipage}[t]{#1}\raggedright}{\end{minipage}} + +\RequirePackage[backend=biber,style=authoryear,sorting=ydnt]{biblatex} +%% For removing numbering entirely when using a numeric style +% \setlength{\bibhang}{1em} +% \DeclareFieldFormat{labelnumberwidth}{\makebox[\bibhang][l]{\itemmarker}} +% \setlength{\biblabelsep}{0pt} +\defbibheading{pubtype}{\cvsubsection{#1}} +\renewcommand{\bibsetup}{\vspace*{-\baselineskip}} +\AtEveryBibitem{\makebox[\bibhang][l]{\itemmarker}} +\setlength{\bibitemsep}{0.25\baselineskip} + +% v1.1.2: make it easier to add a sidebar aligned with top of next page +\RequirePackage{afterpage} +\newcommand{\addsidebar}[2][]{\marginpar{% + \ifstrequal{#1}{}{}{\vspace*{#1}}% + \input{#2}}% +} +\newcommand{\addnextpagesidebar}[2][]{\afterpage{\addsidebar[#1]{#2}}} + +\AtBeginDocument{% + \pagestyle{empty} + \color{body} + \raggedright +} diff --git a/build/main.pdf b/build/main.pdf new file mode 100644 index 0000000..d0459a6 Binary files /dev/null and b/build/main.pdf differ diff --git a/creationdate.lua b/creationdate.lua new file mode 100644 index 0000000..be88818 --- /dev/null +++ b/creationdate.lua @@ -0,0 +1,2 @@ + os.remove("creationdate.timestamp") + io.output("creationdate.timestamp"):write(os.date("\\edef\\tempa{\\string D:%Y%m%d%H%M%S}\n\\def\\tempb{%z}")) diff --git a/main.tex b/main.tex new file mode 100644 index 0000000..3e49b58 --- /dev/null +++ b/main.tex @@ -0,0 +1,337 @@ +%%%%%%%%%%%%%%%%% +% Sample CV From AltaCV template +%%%%%%%%%%%%%%%%% + +%% If you need to pass whatever options to xcolor +\PassOptionsToPackage{dvipsnames}{xcolor} + +%% If you are using \orcid or academicons +%% icons, make sure you have the academicons +%% option here, and compile with XeLaTeX +%% or LuaLaTeX. +% \documentclass[10pt,a4paper,academicons]{altacv} + +%% Use the "normalphoto" option if you want a normal photo instead of cropped to a circle +% \documentclass[10pt,a4paper,normalphoto]{altacv} +\documentclass[10pt,a4paper,ragged2e,withhyper]{altacv} +\usepackage{bookmark} + +%% AltaCV uses the fontawesome5 and academicons fonts +%% and packages. +%% See http://texdoc.net/pkg/fontawesome5 and http://texdoc.net/pkg/academicons for full list of symbols. You MUST compile with XeLaTeX or LuaLaTeX if you want to use academicons. + +% Change the page layout if you need to +\geometry{left=1.2cm,right=1.2cm,top=1cm,bottom=1cm,columnsep=0.75cm} + +% The paracol package lets you typeset columns of text in parallel +\usepackage{paracol} +% Change the font if you want to, depending on whether +% you're using pdflatex or xelatex/lualatex +\ifxetexorluatex + % If using xelatex or lualatex: + \setmainfont{Times} + \setsansfont{Times} + \renewcommand{\familydefault}{\sfdefault} +\else + % If using pdflatex: + \usepackage[rm]{roboto} + \usepackage[defaultsans]{lato} + % \usepackage{sourcesanspro} + \renewcommand{\familydefault}{\sfdefault} +\fi + +% ----- LIGHT MODE ----- +\definecolor{SlateGrey}{HTML}{2E2E2E} +\definecolor{LightGrey}{HTML}{666666} +\definecolor{PrimaryColor}{HTML}{001F5A} +\definecolor{SecondaryColor}{HTML}{0039AC} +\definecolor{ThirdColor}{HTML}{F3890B} +\definecolor{BackgroundColor}{HTML}{E2E2E2} +\colorlet{name}{PrimaryColor} +\colorlet{tagline}{PrimaryColor} +\colorlet{heading}{PrimaryColor} +\colorlet{headingrule}{ThirdColor} +\colorlet{subheading}{SecondaryColor} +\colorlet{accent}{SecondaryColor} +\colorlet{emphasis}{SlateGrey} +\colorlet{body}{LightGrey} +\pagecolor{BackgroundColor} +% ----- DARK MODE ----- +% \definecolor{BackgroundColor}{HTML}{242424} +% \definecolor{SlateGrey}{HTML}{6F6F6F} +% \definecolor{LightGrey}{HTML}{ABABAB} +% \definecolor{PrimaryColor}{HTML}{3F7FFF} +% \colorlet{name}{PrimaryColor} +% \colorlet{tagline}{PrimaryColor} +% \colorlet{heading}{PrimaryColor} +% \colorlet{headingrule}{PrimaryColor} +% \colorlet{subheading}{PrimaryColor} +% \colorlet{accent}{PrimaryColor} +% \colorlet{emphasis}{LightGrey} +% \colorlet{body}{LightGrey} +% \pagecolor{BackgroundColor} + +% Change some fonts, if necessary +\renewcommand{\namefont}{\Huge\rmfamily\bfseries} +\renewcommand{\personalinfofont}{\small\bfseries} +\renewcommand{\cvsectionfont}{\LARGE\rmfamily\bfseries} +\renewcommand{\cvsubsectionfont}{\large\bfseries} + +% Change the bullets for itemize and rating marker +% for \cvskill if you want to +\renewcommand{\itemmarker}{{\small\textbullet}} +\renewcommand{\ratingmarker}{\faCircle} + +\begin{document} + \name{Иван Игоревич Овчинников} + \tagline{Разработчик} + \photoL{4cm}{IMG_1312} + + \personalinfo{ + \email{mail@iovchinnikov.ru}\smallskip + \phone{+7 (925) 189-32-29} + \location{Москва, Россия}\\ + %\linkedin{N/A} + \github{ivan-igorevich} + \homepage{iovchinnikov.ru} + %% Own arbtrary detail with + %% \printinfo{symbol}{detail}[optional hyperlink prefix] + % \printinfo{\faPaw}{Hey ho!}[https://example.com/] + %% Declare your own field with + %% \NewInfoFiled{fieldname}{symbol}[optional hyperlink prefix] and use it: + \NewInfoField{gitlab}{\faGitlab}[https://gitlab.com/] + \gitlab{ivan-igorevich} + } + + \makecvheader + \AtBeginEnvironment{itemize}{\small} + + %% Set the left/right column width ratio to 6:4. + \columnratio{0.25} + + % Start a 2-column paracol. Both the left and right columns will automatically + % break across pages if things get too long. + \begin{paracol}{2} + % ----- STRENGTHS ----- + \cvsection{Сильные \\ стороны} + \cvtag{PostgreSQL} + \cvtag{Java Core} + \cvtag{JDBC} + \cvtag{C++} + \cvtag{CMake} + \cvtag{Conan} + \medskip + + \cvtag{Командная работа} + \cvtag{Linux} + \cvtag{Бизнес-процессы} + \cvtag{Git} + \cvtag{\LaTeX} + \cvtag{ООП} + \cvtag{Terminal} + \cvtag{Docker} + \cvtag{Docker-compose} + \newline + \cvtag{Моделирование БД} + % ----- STRENGTHS ----- + + % ----- LEARNING ----- + \cvsection{Обучался} + \cvtag{Java} + \cvtag{C++} + \cvtag{Verilog} + \cvtag{\LaTeX} + \cvtag{Git} + \cvtag{Agile} + \cvtag{SCRUM} + \cvtag{Docker} + % ----- LEARNING ----- + + % ----- LANGUAGES ----- + \cvsection{Языки} + \cvlang{Русский}{Родной}\\ + \divider + + \cvlang{English}{Upper Intermediate} + %% Yeah I didn't spend too much time making all the + %% spacing consistent... sorry. Use \smallskip, \medskip, + %% \bigskip, \vpsace etc to make ajustments. + \smallskip + % ----- LANGUAGES ----- + + % ----- REFERENCES ----- + % \cvsection{References} + % \cvref{Ref 1}{ref-1} + % \divider + + % \cvref{Ref 2}{ref-2} + % \divider + + % \cvref{Ref 3}{ref-3} + % \smallskip + % ----- REFERENCES ----- + + % ----- MOST PROUD ----- + \cvsection{Больше \\ всего \\ горжусь} + + \cvachievement{\faTrophy}{Смена профессии}{За неполный год освоился в новой для себя профессии, и перешёл от должности техника к должности инженера-программиста. За время работы в НПО ИТ закончил не менее пяти проектов для аппаратуры, три из которых на данный момент используются в полевых условиях, в двух из которых участвовал с момента старта}\\ + % \divider + % \cvachievement{\faHeartbeat}{Another achievement}{more details about it of course}\\ + % \divider + % \cvachievement{\faHeartbeat}{Another achievement}{more details about it of course} + % ----- MOST PROUD ----- + + % \cvsection{A Day of My Life} + + % Adapted from @Jake's answer from http://tex.stackexchange.com/a/82729/226 + % \wheelchart{outer radius}{inner radius}{ + % comma-separated list of value/text width/color/detail} + % \wheelchart{1.5cm}{0.5cm}{% + % 6/8em/accent!30/{Sleep,\\beautiful sleep}, + % 3/8em/accent!40/Hopeful novelist by night, + % 8/8em/accent!60/Daytime job, + % 2/10em/accent/Sports and relaxation, + % 5/6em/accent!20/Spending time with family + % } + + % use ONLY \newpage if you want to force a page break for + % ONLY the current column + \newpage + + %% Switch to the right column. This will now automatically move to the second + %% page if the content is too long. + \switchcolumn + + % ----- ABOUT ME ----- + \cvsection{Обо мне} + \sloppy + \begin{quote} + За неполный год освоился в новой для себя профессии, и перешёл от должности техника к должности инженера-программиста. За время работы в НПО ИТ закончил не менее пяти проектов для аппаратуры, три из которых на данный момент используются в полевых условиях, в двух из которых участвовал с момента старта. Хотел расти и развиваться, что невозможно в рамках описания аппаратуры на отечественной элементной базе. Тяготел к языкам высокого уровня, современным фреймворкам, облачным технологиям. В свободное время занимался самообразованием (посредством прохождения интерактивных курсов, участия в вебинарах и семинарах), а также преподавал начальный уровень Java в онлайн школе (чем занимаюсь до сих пор). В рамках работы в Российских Космических Системах выступал в роли программиста межотраслевой базы данных электронных компонентов, после ухода команды принял на себя роль архитектора и системного аналитика. На данный момент веду два проекта: + \begin{itemize} + \item планирование и учёт работы наземных комплексов управления космическими аппаратами + \item организация анализа телеметрической информации + \end{itemize} + в обоих проектах выступаю в роли эксперта в доменной области, связанной с сеансами связи и телеметрической информацией, системного аналитика, архитектора и тимлида. В силу этих обстоятельств технические знания теряют свою актуальность и требуют значительных обновлений. + \end{quote} + % ----- ABOUT ME ----- + + % ----- EXPERIENCE ----- + \cvsection{Опыт} + \cvevent{ +Ведущий специалист, начальник группы }{| АО Российские Космические Системы}{Май 2017 -- по н. вр.}{Москва} + \begin{itemize} + \item Построение архитектуры, планирование, моделирование хранилищ и написание информационных систем: + \begin{itemize} + \item Автоматизация планирования и проведения эксплуатационных мероприятий + \item Автоматизация планирования и проведения сеансов связи, + \item Автоматизация создания отчётной документации, + \item Автоматизация оценки состояния технических средств, + \item Организация внутреннего документооборота, + \item Формирование протоколов передачи данных. + \item \textbf{Используемые технологии:} Java, Spring, EclipseLink, PostgreSQL, yarg, Activiti, VAADIN. + \end{itemize} + \item Создание межотраслевой базы данных импортозамещения электронных компонентов космического приборостроения: + \begin{itemize} + \item Планирование создания составных частей космических аппаратов + \item Планирование создания технических средств из составных частей + \item Планирование комплектования изделий + \item Планирование и ведение документооборота по создаваемым изделиям + \item Планирование создания выходной документации по составным частям и изделиям + \item Бизнес-процессы согласования комплектования изделий и составных частей + \item \textbf{Используемые технологии:} Java, Spring, EclipseLink, PostgreSQL, yarg, Activiti, VAADIN. + \end{itemize} + \item Приём обработка и анализ телеметрической информации: + \begin{itemize} + \item Приём данных по сети, UDP, + \item Формирование параметрических показателей (калибровки, тарировки), + \item Формирование графического представления информации, + \item Подготовка и хранение данных в БД + \item \textbf{Используемые технологии:} C/C++, Qt5, OpenGL, PostgreSQL, AMQP, libtorrent, Conan, CMake + \end{itemize} + \item Внедрение в работу отдела системы контроля версий, менеджмент проектов и налаживание рабочих процессов распределённой разработки. Администрирование инфраструктуры отдела: + \begin{itemize} + \item Трекинг задач, + \item Менеджмент репозиториев, + \item Менеджмент артефактов, + \item Gitlab CI/CD (незначительно), + \item scrum-мастеринг + \item \textbf{Используемые технологии:} Git, Docker, Docker-compose, Gitlab, Mattermost, PostgreSQL, Nexus + \end{itemize} + \end{itemize} + \divider + + \cvevent{Преподаватель Java, Декан факультета разработки на С++ }{| GeekBrains}{Ноябрь 2016 -- по н. вр.}{Москва, geekbrains.ru} + \begin{itemize} + \item Базовый и средний уровни Java Core (ООП, многопоточность, JDBC, Swing, JavaFX, java.io, коллекции, сокеты, исключения), + \item Базовый и средний уровень C/C++ (процедурное программирование, компиляция и сборка, ООП), авторство стартового курса по алгоритмам и структурам данных на С, ревью и правки материалов по сетевому программированию, нововведениям в современных стандартах C++11/14/17/20 + \item Авторство программы обучения на факультете, экспертиза и ревью обучающих материалов, собеседование экспертов + \item Принятие управленческих решений на уровне экспертов и преподавателей, разработка направления развития факультета + \item разрешение конфликтных ситуаций со студентами, дополнительная мотивация + \item За всё время работы оценка преподавателя не опускалась ниже 4.92/5. Проведено более 70 потоков общим объёмом более 3000 студентов. + \end{itemize} + \divider + + \cvevent{Инженер-программист }{| АО НПО ИТ}{Март 2015 -- Май 2017}{Королёв} + \begin{itemize} + \item Написание прошивок для микроконтроллеров Миландр, NXP: + \begin{itemize} + \item Опрос датчиков и периферийного оборудования, + \item Формирование внутренних посылок между частями системы + \item Написание имитаторов сигналов датчиков + \item Работа с протоколами передачи данных (UART, SPI, I2S, I2C, Ethernet) + \item \textbf{Используемые технологии:} C/С++, Keil + \end{itemize} + \item Описание аппаратуры FPGA: + \begin{itemize} + \item Формирование телеметрического кадра + \item Сбор информации от частей системы + \item Написание имитаторов формирования кадра + \item Работа с протоколами передачи данных (UART, SPI, I2S, I2C, Ethernet) + \item \textbf{Используемые технологии:} Verilog. Altera Quartus 9.0-13.1 (Flex10K, CycloneIII) + \end{itemize} + \item Написание пользовательских приложений, для приёма и расшифровки данных с аппаратуры. + \begin{itemize} + \item \textbf{Используемые технологии:} Visual Studio (C\#. Windows, UDP, Serial, Threading); + \end{itemize} + \item Внедрение в работу системы контроля версий Git, обучение коллег, настройка и администрирование локального менеджера репозиториев. + \end{itemize} + + % ----- EXPERIENCE ----- + + % ----- EDUCATION ----- + \cvsection{Образование} + \cvevent{Магистр, информационные системы и технологии }{| МГТУ \\ им. Н.Э.Баумана}{2021 -- по н. вр}{Москва} + \begin{itemize} + \item Сдал вступительные экзамены + \end{itemize} + \divider + + \cvevent{Бакалавр, управление персоналом }{| Московская \\ финансово-промышленная академия}{2008 -- 2012}{Москва} + \begin{itemize} + \item Диплом + \end{itemize} + \divider + + \cvevent{Разработчик FPGA }{| МГТУ им. Н.Э.Баумана}{2015}{Москва} + \begin{itemize} + \item Сертификат + \end{itemize} + % ----- EDUCATION ----- + + % ----- PROJECTS ----- + % \cvsection{Projects} + % \cvevent{Project 1 }{\cvrepo{| \faGithub}{https://github.com/user/repo}\cvrepo{| \faGlobe}{https://repo-demo.com/}}{Mm YYYY -- Mm YYYY}{} + % \begin{itemize} + % \item Item 1 + % \item Item 2 + % \end{itemize} + % \divider + + % \cvevent{Project 1 }{\cvrepo{| \faGitlab}{https://gitlab.com/user/repo}\cvrepo{| \faGlobe}{https://repo-demo.com/}}{Mm YYYY -- Mm YYYY}{} + % \begin{itemize} + % \item Item 1 + % \item Item 2 + % \end{itemize} + % ----- PROJECTS ----- + \end{paracol} +\end{document} diff --git a/sample.bib b/sample.bib new file mode 100644 index 0000000..bf765ad --- /dev/null +++ b/sample.bib @@ -0,0 +1,45 @@ +@ARTICLE{Meyer2000, +AUTHOR={Bernd Meyer}, +TITLE={A constraint-based framework for diagrammatic reasoning}, +JOURNAL={Applied Artificial Intelligence}, +VOLUME= {14}, +ISSUE = {4}, +PAGES= {327--344}, +YEAR={2000} +} + +@ARTICLE{Codishetal2000, +AUTHOR={M. Codish and K. Marriott and C.K. Taboch}, +TITLE={Improving program analyses by structure untupling}, +JOURNAL={Journal of Logic Programming}, +VOLUME= {43}, +ISSUE = {3}, +PAGES= {251--263}, +YEAR={2000} +} + +@inproceedings{Huetal2000, +author = {J. Hu and H.R. Wu and A. Jennings and X. Wang}, +title = {Fast and robust equalization: A case study}, +booktitle = {Proceedings of the World Multiconference on Systemics, Cybernetics and Informatics, (SCI 2000), Florida, USA, 23-26 July 2000}, +publisher = {International Institute of Informatics and Systemics}, +address = {FL, USA}, +pages = {398--403}, +year = {2000} +} + +@Book{Conway2000, +author = {Damian Conway}, +title = {Object {O}riented {P}erl: {A} comprehensive guide to concepts and programming techniques}, +publisher = {Manning Publications Co.}, +year = {2000}, +address = {Connecticut, USA} +} + +@inproceedings{zou2013bilingual, + title={Bilingual Word Embeddings for Phrase-Based Machine Translation.}, + author={Zou, Will Y and Socher, Richard and Cer, Daniel M and Manning, Christopher D}, + booktitle={EMNLP}, + pages={1393--1398}, + year={2013} +}