Add the first latex version

This commit is contained in:
Sameer Rahmani 2022-03-25 14:45:33 +00:00
parent ffc3064c2e
commit 8783654dca
5 changed files with 357 additions and 1 deletions

3
.gitignore vendored
View File

@ -1,2 +1,3 @@
*~
*\#
*\#
build/

5
Makefile Normal file
View File

@ -0,0 +1,5 @@
cv.pdf:
latexmk -f -xelatex -interaction=nonstopmode -output-directory=$(PWD)/build/ cv.tex
.PHONY: build
build: cv.pdf

103
cv.tex Normal file
View File

@ -0,0 +1,103 @@
\documentclass{lxsameer_cv}
\setname{Sameer}{Rahmani}
\setaddress{Dublin, Ireland}
\setmobile{+353 85 8559285}
\setmail{lxsameer@lxsameer.com}
\setposition{Senior Software Engineer}
%you can play with color of the template (red is also nice..)
\setlinkedinaccount{https://www.linkedin.com/in/lxsameer/}
\setgithubaccount{https://devheroes.codes/lxsameer}
\setthemecolor{red}
\begin{document}
%Set variables
%You can add sections, texts, explanations just by copying the style below.
% Replace the dummy texts "\lipsum[1][x-x]\par" with actual texts.
%Create header
\headerview{}
\vspace{1ex}
%Sections
\begin{multicols}{2}[]
% Summary
\addblocktext{Summary}{%
I'm a software engineer by day and an amateur scientist by night who is
passionate about learning cutting edge technologies and adventuring in
the world of science. A Huge Free Software fan, contributor and advocate.
I'm a language enthusiastic who implemented couple of languages and have
neck for implementing fine grain concurrency at low level.
I'm a big data/distributed systems researcher who done several
implementation using tools like: Clojure, Kafka, Zookeeper, Mesos, Onyx,
Cassandra and some other fantastic tools.
}
%Education
\section{Education}
\experience{Azad University}{2005-2009} % chktex 8
\explanation{B.S in Civil Engineering}
% Skills
\section{Skills}
\columnbreak{}
% Experience
\section{Experience}
% ====
\role{Udemy}{Senior Staff Software Engineer}{2018-Present}{
\jobdesc{
\hspace{0.2cm} Played a key role in delivering the most important UFB project in
its lifetime (since 2015) which is the LearningPaths and moved to
SRE/Build team to improve the efficiency of our services and
development environments. We are using Python/Django, Docker,
AWS, K8s, Mesos, RabbitMQ, Kafka, Redshift, MySQL, Cassandra,
C/Rust and \ldots }}
\role{PageFair}{Senior Software Engineer}{2017-2018}{ % chktex 8
\jobdesc{
\hspace{0.2cm} Successfully developed and maintained a very large scale and
complex system of several components using technologies like
NodeJS, Scala, Docker, AWS, Promethus, Python, Django,
PostgreSQL, RabbitMQ and \ldots }}
\role{Buzzjective}{Senior Software Engineer}{2014-2017}{ % chktex 8
\jobdesc{
\hspace{0.2cm} Worked on a face to face identification service based on Germany
called identity.tm. We used RubyOnRails, AngularJS, PostgreSQL,
Websocket, WebRTC, Docker and \ldots
}
}
\role{Yellowen}{Senior Software Engineer}{2010-2014}{ % chktex 8
\jobdesc{
\hspace{0.2cm} Successfully developed and managed serveral large scale web
and mobile projects Using RubyonRails, Clojure, Python/Django,
MongoDB, PostgreSQL, Riak, Redis, ElasticSearch, Fluentd, Cassandra,
Javascript and \ldots
}
}
\role{Bayan}{Senior Software Engineer}{2009-2010}{ % chktex 8
\jobdesc{
\hspace{0.2cm} Worked on a large scale Python/Django SSO which is the beating
heart of Bayan services. We used MongoDB, Python, Django,
Celery, Memcached, PostgreSQL and \ldots
}
}
\role{Yellowen}{Junior Software Engineer}{2005-2009}{ % chktex 8
\jobdesc{
\hspace{0.2cm} I mostly worked on a GIS software along side a huge automation
software which ran on 3000 school all over the country. We used:
Python/Django, Qt, PostGIS, PostgreSQL and \ldots
}
}
\end{multicols}
%Footnote
\createfootnote{}
\end{document}

BIN
images/avatar.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.6 KiB

247
lxsameer_cv.cls Normal file
View File

@ -0,0 +1,247 @@
%!TEX TS-program = xelatex
%!TEX encoding = UTF-8 Unicode
% Lxsameer's CV Latex class
% Copyright (C) 2022 Sameer Rahmani <lxsameer@gnu.org>
%
% This program is free software; you can redistribute it and/or
% modify it under the terms of the GNU General Public License
% as published by the Free Software Foundation; either version 2
% of the License, or (at your option) any later version.
%
% This program is distributed in the hope that it will be useful,
% but WITHOUT ANY WARRANTY; without even the implied warranty of
% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
% GNU General Public License for more details.
%
% You should have received a copy of the GNU General Public License
% along with this program; if not, write to the Free Software
% Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
% This is a work based on Murat Can Karacabey's work
\author{Sameer Rahmani}
% moved here I guess article class causes option clash with xcolor if used after loading the class
\RequirePackage[dvipsnames]{xcolor}
\LoadClass[11pt]{article}
\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{lxsameer_cv}[2022/03/22 lxsameer's CV Class]
\RequirePackage[sfdefault]{noto}
\RequirePackage{multicol}
\RequirePackage{etoolbox}
\RequirePackage{pgffor}
\RequirePackage{titlesec}
\RequirePackage{tikz}
\RequirePackage{fontspec}
\RequirePackage[left=0.75in,top=0.3in,right=0.75in,bottom=0.6in]{geometry} % Document margins
\RequirePackage{hyperref}
\RequirePackage{fontawesome}
\RequirePackage{mfirstuc}
\RequirePackage{ifthen}
\RequirePackage{lipsum}
\RequirePackage{array}
\pagestyle{empty}
%Setup
\newcommand*{\setname}[2]{\def\@firstname{#1}\def\@lastname{#2}}
\newcommand*{\setaddress}[1]{\def\@address{#1}}
\newcommand*{\setmobile}[1]{\def\@mobile{#1}}
\newcommand*{\setposition}[1]{\def\@position{#1}}
\newcommand*{\setmail}[1]{\def\@mail{#1}}
\newcommand*{\setthemecolor}[1]{\def\@themecolor{#1}}
\newcommand*{\setlinkedinaccount}[1]{\def\@linkedinaccount{#1}}
\newcommand*{\setgithubaccount}[1]{\def\@githubaccount{#1}}
%Setup for coverletter
\newcommand*{\setcompanyname}[1]{\def\@companyname{#1}}
\newcommand*{\setcontactperson}[1]{\def\@contactperson{#1}}
\newcommand*{\setclaimedposition}[1]{\def\@claimedposition{#1}}
\hypersetup{
colorlinks=true,
urlcolor=cyan,
}
% View commands
% Header
% can makebox also be used?
\newcommand\headerview{
\begin{minipage}{0.25\linewidth}
\profpic{0.22}{images/avatar}
\end{minipage}%
\hfill
\begin{minipage}{0.45\linewidth}
\center \name \\[0.05cm]
\contact % address \ mobile \\ mail
\end{minipage}
}
%profilpicture
\newsavebox{\picbox}
\newcommand{\profpic}[2]{%
\savebox{\picbox}{%
\includegraphics[scale=#1]{#2}}%
\tikz\node [draw, circle,%
line width=4pt, color=white,%
minimum width=\wd\picbox,minimum height=\ht\picbox,%
path picture={ \node at (path picture bounding box.center)%
{\usebox{\picbox}};}]%
{};}
%contactsubviews
\newcommand{\githubview}{\href{\@linkedinaccount}{\faLinkedinSquare\ \footnotesize linkedin}}
\newcommand{\linkedinview}{\href{\@githubaccount}{\faGithubSquare\ \footnotesize github}}
\newcommand{\name}{%
{\large \@firstname \ \textsc{\@lastname}}
}
\newcommand{\contact}{%
{\small \@address \cps \@mobile \\ \@mail%
\\%
\linkedinview \cps \githubview \\
} %
}
% Covverletterview
\newcommand\coverletter[1]{
\\ \coverlettersubview
\section{} \vspace{1ex}
\textbf{ Dear \@contactperson, \\[0.1cm]}
#1
}
\newcommand\coverlettersubview{
\begin{tabular}{>{\scshape \bfseries \color{\@themecolor}}l >{\small }l}
Company: & \@companyname \\
Position: & \@claimedposition \\
\end{tabular}
}
% Helper commands
\newcommand\ruleafter[1]{#1~{\color{black!60!\@themecolor}\hrulefill}} % a trick to put the line with <before> parameter in \titleformat
%colorfulpipeseperator
\newcommand{\cps}{{\color{\@themecolor} \quad\textbar\quad}}
\newcommand{\cpshalf}{{\color{\@themecolor} \hspace{0.2em}\textbar\hspace{0.2em}}}
\newcommand{\coloredbullet}{{\color{\@themecolor} \textbullet}}
% Edit section styles
\titleformat{\section} % Customise the \section command
{\large\bfseries\scshape\raggedright\color{\@themecolor}} % Make the \section headers large (\Large),
% small capitals (\scshape) and left aligned (\raggedright)
{}{0em} % Can be used to give a prefix to all sections, like 'Section ...'
{\ruleafter} % Can be used to insert code before the heading
\titlespacing*{\section}{-1pt}{0pt}{0pt}
% Textview commands
%% \newcommand{\experience}[2]{%
%% \mbox{\hspace{1em} \scshape \textbf{#1} }%
%% }
\newcommand{\datetext}[1]{%
{\textit{\tiny \mdseries \color{gray} #1 }}
}
\newcommand{\experience}[2]{%
\begin{small}
{\hspace{1em} \textbf{\scshape \color{black!10!\@themecolor} #1}}
\end{small}
\hfill
\datetext{#2}\\[0cm]
}
%
\newcommand{\role}[4]{%
\vbox{
\begin{small}
{\noindent \hspace{1em} \textbf{\scshape \color{black!10!\@themecolor} #1} \jobtitle{#2}}
\end{small}
\hfill
\datetext{#3}\\[0.2cm]
\begin{small}
#4
\end{small}
}
}
\newcommand{\jobtitle}[1]{%
{\tiny \color{black!20!gray} #1}
}
\newcommand{\desc}[1]{%
\begin{minipage}{0.96\linewidth} \scriptsize #1 \end{minipage} \\[0.1cm]
}
\newcommand{\jobdesc}[1]{%
\mbox{\hspace{1.2em} \scriptsize \desc{#1}}\\[0.3cm]
}
\newcommand{\explanation}[1]{%
\mbox{\scshape \hspace{1.2em} \footnotesize #1}\\[0.05cm]
}
\newcommand{\explanationdetail}[1]{%
\indent \begin{minipage}{0.96\linewidth} \footnotesize #1 \end{minipage} \\[0.1cm]
}
\newcommand{\itemwithtext}[1]{%
\begin{minipage}{\linewidth} \footnotesize \item #1 \end{minipage}
}
\newcommand{\addblocktext}[2]{%
\section{#1}
\indent \explanationdetail{\hspace{4ex} #2}
}
\newcommand\createskill[2]{%
\textsc{\textbf{#1}} & #2
}
\newcommand\createtablecontent[1]{%
\foreach \x [count=\xi] in {#1} {\ifthenelse{\xi=1}{\x}{\\ \x}}
}
\newcommand\createskillsanothertry[1]{%not used
\begin{tabular}{r|l}
\createtablecontent{#1}
\end{tabular}
}
\newcommand\createskills[1]{%
\explanationdetail{
\begin{tabular}{rl}
\makeatletter
\@for\thisitem:=#1\do{\thisitem\\[0.1cm]}
\makeatother
\end{tabular}
}
}
\newcommand\createbullets[1]{%
\renewcommand{\labelitemi}{\coloredbullet}
\begin{itemize}
\makeatletter
\@for\thisitem:=#1\do{\itemwithtext{\thisitem}}
\makeatother
\end{itemize}
}
\newcommand\createfootnote{%
\renewcommand{\footnotesize}{\fontsize{7pt}{11pt}\selectfont}
\renewcommand\footnoterule{\rule{0.3\linewidth}{0.5pt}}
\let\thefootnote\relax\footnote{\today\ / \href{https://github.com/muratcankaracabey/latex_cv}{source code}}}