Finish the common style

This commit is contained in:
Sameer Rahmani 2022-03-26 18:18:26 +00:00
parent 91d3376359
commit 6025eb41a3
2 changed files with 146 additions and 41 deletions

116
cv.tex
View File

@ -22,49 +22,94 @@
%Sections
\begin{multicols}{2}[]
\vbox{
% Summary
\summary{%
% 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.
\hspace{\parindent} 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 and lives by his \href{https://lxsameer.com/coh.html}{code of honor}.
In love with \hl{physics}, \hl{mathematics}, \hl{CS} and
a believer in education.
\par
I'm a Huge Free Software fan, contributor and advocate and a language enthusiast who
has implemented couple of languages and at the moment working on a \hl{compiler} in
\hl{LLVM/MLIR} for a typed lisp called \hl{Serene}.
\par
Richard Feynman once said \textit{``What I cannot create, I do not understand''}, That wise quote
summarizes my way of engineering. I love to learn and share what I've leared with others.
In fact I have about 6 years of experience in \hl{teaching} CS and Linux and also I make
and publish videos on my \href{https://www.youtube.com/c/lxsameer}{youtube channel} about
my projects and researches to share what I learn with people.
I'm a language enthusiastic who implemented couple of languages and have
neck for implementing fine grain concurrency at low level.
I'm team player who likes to work in a friendly environment that help him grow and gives him
the opportunity to challenge himself and learn about things that he is passionate about.
}
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.
% Skills
\section{Skills}
\begin{multicols}{2}[]
\skill{Lisp family}{1}
\skill{Golang}{0.9}
\skill{Rust}{0.7}
\skill{C/C++}{0.7}
\skill{Haskell}{0.6}
\skill{Javascript}{1}
\skill{Python}{1}
\skill{Ruby}{1}
\skill{Java}{0.7}
\columnbreak{}
\\
\skill{Linux Administration}{1}
\skill{DevOps}{0.9}
\skill{Security Knowledge}{0.5}
\skill{Networking Knowledge}{0.7}
\skill{Big data Knowledge}{0.8}
\skill{Distributed Systems}{0.8}
\skill{Electronics}{0.4}
\end{multicols}
% Projects
\section{Projects}
\project{Serene Language}{https://serene-lang.org}{
Serene is a compiler that started as a research project and turned into a serious attempt to
create a strongly typed \hl{Lisp}. I'm using \hl{C++}, \hl{LLVM}, and \hl{MLIR} as
the core technologies and I create videos about my progress as a way to share the experience
with other people.
}
\project{FG42}{https://serene-lang.org}{
FG42 is an editor/WM on top of \hl{GNU/Emacs} that I started back in \hl{2010} and to this day I
keep working on it. FG42 is my main tool that I use it for everything. It has a small user
community and few contributors.
}
\project{Hellhound}{https://hellhound.io}{
HellHound is a set of libraries to create simple and elegant programs based on streams.
A HellHound application is a system of components which work together asynchronously.
Components form one or more data pipelines through workflows. It is
an opinionated implementation of the commander pattern is \hl{Clojure}.
}
\section{Contributions}
Linux Kernel, LLVM/Clang, ClojureScript, RubyOnRails, Debian, GNU, Pedestal, and \ldots
}
%Education
\section{Education}
\experience{Azad University}{2005-2009} % chktex 8
\explanation{B.S in Civil Engineering}
% Skills
\section{Skills}
\columnbreak{}
% Experience
\section{Experience}
% ====
\vbox{\vspace{0.2cm}
\role{Udemy}{Senior Staff Software Engineer}{2018-Present}{
\jobdesc{
\hspace{0.2cm} Played a key role in delivering the most important UFB project in
\hspace{\parindent} 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 \hl{Python}, \hl{Golang}, \hl{Docker},
\hl{C/C++}, \hl{Rust}, \hl{AWS}, \hl{K8s}, \hl{RabbitMQ}, \hl{Kafka},
\hl{MySQL}, \hl{Cassandra} 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
\hl{NodeJS}, \hl{Scala}, \hl{Docker}, \hl{AWS}, \hl{Promethus}, \hl{Python}, \hl{Django},
\hl{PostgreSQL}, \hl{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
@ -72,7 +117,6 @@
\hl{Websocket}, \hl{WebRTC}, \hl{Docker} and \ldots
}
}
\role{Yellowen}{Senior Software Engineer}{2010-2014}{ % chktex 8
\jobdesc{
\hspace{0.2cm} Successfully developed and managed serveral large scale web
@ -81,7 +125,6 @@
\hl{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
@ -90,15 +133,32 @@
}
}
\role{Yellowen}{Junior Software Engineer}{2005-2009}{ % chktex 8
\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:
\hl{Python/Django}, \hl{Qt}, \hl{PostGIS}, \hl{PostgreSQL} and \ldots
\hl{Python/Django}, \hl{C++/Qt}, \hl{PostGIS}, \hl{PostgreSQL} and \ldots
}
}
}
% Volunteer work
\section{Volunteer Works}
\hspace{0.2cm} \scriptsize{Co-Organizer of:}\\
\volunteer{Karajlug (2008-2017)} \\ % chktex 8
\volunteer{Clojure Ireland (2018-Present)} \\
\volunteer{Proud member of \hl{GNU} project} \\
\volunteer{IrPyConf 2013, 2014} \\
\volunteer{KSFD (2010-2014)} \\ % chktex 8
\volunteer{KSFD (2010-2014)} \\[0.2cm] % chktex 8
% Awards
\section{Awards}
\award{3rd place of national CS Olympia}{2003}
% Education
\section{Education}
\experience{Azad University}{2005-2009} % chktex 8
\explanation{B.S in Civil Engineering}
\end{multicols}
%Footnote
\createfootnote{}
%\createfootnote{}
\end{document}

View File

@ -25,7 +25,10 @@
\LoadClass[11pt]{article}
\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{lxsameer_cv}[2022/03/22 lxsameer's CV Class]
\RequirePackage[sfdefault]{noto}
%\RequirePackage[sfdefault]{noto}
\RequirePackage[default]{sourcesanspro}
\setsansfont{Source Sans Pro}
\RequirePackage{multicol}
\RequirePackage{etoolbox}
\RequirePackage{pgffor}
@ -34,15 +37,21 @@
\RequirePackage{fontspec}
\RequirePackage[left=0.75in,top=0.3in,right=0.75in,bottom=0.6in]{geometry} % Document margins
\RequirePackage{hyperref}
\RequirePackage{fontawesome}
\RequirePackage{fontawesome5}
\RequirePackage{mfirstuc}
\RequirePackage{ifthen}
\RequirePackage{lipsum}
\RequirePackage{array}
\RequirePackage{scrextend}
\edef\restoreparindent{\parindent=\the\parindent\relax}
\RequirePackage{parskip}
\restoreparindent{}
\pagestyle{empty}
%Setup
%Setup
\parskip=0.15cm
\changefontsizes{11pt}
\newcommand*{\setname}[2]{\def\@firstname{#1}\def\@lastname{#2}}
\newcommand*{\setaddress}[1]{\def\@address{#1}}
\newcommand*{\setmobile}[1]{\def\@mobile{#1}}
@ -70,7 +79,7 @@
% can makebox also be used?
\newcommand\headerview{
\begin{minipage}{0.25\linewidth}
\profpic{0.22}{images/avatar}
\profpic{0.4}{images/avatar}
\end{minipage}%
\hfill
\begin{minipage}{0.45\linewidth}
@ -94,10 +103,6 @@
%contactsubviews
\newcommand{\githubview}{\href{\@linkedinaccount}{\faLinkedinSquare\ \footnotesize linkedin}}
\newcommand{\linkedinview}{\href{\@githubaccount}{\faGithubSquare\ \footnotesize github}}
\newcommand{\name}{%
{\large \@firstname \ \textsc{\@lastname}}
}
@ -105,7 +110,7 @@
\newcommand{\contact}{%
{\small \@address \cps \@mobile \\ \@mail%
\\%
\linkedinview \cps \githubview \\
\cps \\
} %
}
@ -151,6 +156,11 @@ Position: & \@claimedposition \\
\titlespacing*{\section}{-1pt}{0pt}{0pt}
\newcommand{\volunteer}[1]{
\begin{small}
\indent \coloredbullet{} \scriptsize #1
\end{small}
}
% Textview commands
%% \newcommand{\experience}[2]{%
@ -161,6 +171,23 @@ Position: & \@claimedposition \\
{\textit{\tiny \mdseries \color{gray} #1 }}
}
\newcommand{\award}[2]{%
\begin{small}
{\large{\color{black!10!\@themecolor} \faIcon{medal}}}
{\textbf{#1}}
\end{small}
\hfill
\datetext{#2}\\[0cm]
}
\newcommand{\project}[3]{%
{\small{\href{#2}{\faIcon{link}~#1}}} \\
\vbox{\vspace{0.05cm}
\sectiondesc{#3}
}
}
\newcommand{\experience}[2]{%
\begin{small}
{\hspace{1em} \textbf{\scshape \color{black!10!\@themecolor} #1}}
@ -172,7 +199,7 @@ Position: & \@claimedposition \\
\newcommand{\role}[4]{%
\vbox{
\begin{small}
{\noindent \hspace{1em} \textbf{\scshape \color{black!10!\@themecolor} #1} \jobtitle{#2}}
{\noindent \hspace{1em} \textbf{\color{black!10!\@themecolor} #1} \jobtitle{#2}}
\end{small}
\hfill
\datetext{#3}\\[0.2cm]
@ -190,6 +217,24 @@ Position: & \@claimedposition \\
\begin{minipage}{0.96\linewidth} \scriptsize #1 \end{minipage} \\[0.1cm]
}
\definecolor{verylightgray}{gray}{0.9}
% returns minipage width minus two times \fboxsep
% to keep padding included in width calculations
% can also be used for other boxes / environments
\newcommand{\mpwidth}{\linewidth-\fboxsep-\fboxsep}
\newcommand{\skill}[2] {
\mbox{#1} \\
\begin{tikzpicture}[scale=1]
\fill [verylightgray] (0,0) rectangle (1\mpwidth, 0.15);
\fill [\@themecolor] (0,0) rectangle (#2\mpwidth, 0.15);
\end{tikzpicture} \\[0.1cm]
}
\newcommand{\sectiondesc}[1]{%
\scriptsize{#1} \\[0.1cm]
}
\newcommand{\jobdesc}[1]{%
\mbox{\hspace{1.2em} \scriptsize \desc{#1}}\\[0.3cm]
}
@ -214,7 +259,7 @@ Position: & \@claimedposition \\
\newcommand{\summary}[1]{%
\section{Summary}
\explanationdetail{\hspace{4ex} #2}
\sectiondesc{#1}
}
\newcommand\createskill[2]{%
@ -228,7 +273,7 @@ Position: & \@claimedposition \\
\newcommand\createskillsanothertry[1]{%not used
\begin{tabular}{r|l}
\createtablecontent{#1}
\end{tabular}
\end{tabular}
}
\newcommand\createskills[1]{%