Closed khinshankhan closed 2 years ago
This has been requested multiple times - there are some suggestions for implementations in comments iirc.
You can also see my own (which is used very much like your pseudocode) at OJFord/curriculum-vitae - I've been meaning to compare to others' mentioned here and provide some canonical soluti9, but haven't gotten around to it yet.
(Though I notice my comment there is a little out of date, I now do it more like your suggestion as above.)
Bit of a necrobump but your solution really didn't work for me. I ended up making these utilities:
\newenvironment{cvtightprose}{%
\vspace{-4.0mm}
\begin{justify}
\setlength{\parskip}{0pt}
}{%
\end{justify}
\vspace{-4.0mm}
}
\newcommand*{\nrolecventrynoitems}[8]{%
\vspace{-2.0mm}
\setlength\tabcolsep{0pt}
\setlength{\extrarowheight}{0pt}
\begin{tabular*}{\textwidth}{@{\extracolsep{\fill}} L{\textwidth - 4.5cm} R{4.5cm}}
\ifempty{#5#6}
{\entrytitlestyle{#1} & \entrylocationstyle{#2} \\
\entrypositionstyle{#3} & \entrydatestyle{#4} \\}
{\ifempty{#7#8}
{\entrytitlestyle{#1} & \entrylocationstyle{#2} \\
\entrypositionstyle{#3} & \entrydatestyle{#4} \\
\entrypositionstyle{#5} & \entrydatestyle{#6} \\}
{\entrytitlestyle{#1} & \entrylocationstyle{#2} \\
\entrypositionstyle{#3} & \entrydatestyle{#4} \\
\entrypositionstyle{#5} & \entrydatestyle{#6} \\
\entrypositionstyle{#7} & \entrydatestyle{#8} \\}}
\end{tabular*}%
}
\newcommand*{\cvcustombodydescription}[3]{%
\vspace{-3.0mm}
\setlength\tabcolsep{0pt}
\setlength{\extrarowheight}{0pt}
\begin{tabular*}{\textwidth}{@{\extracolsep{\fill}} L{\textwidth - 4.5cm} R{4.5cm}}
\ifstrempty{#1}
{}
{\multicolumn{2}{L{\textwidth}}{\descriptionstyle{#1}}\\}
\ifstrempty{#2}
{}
{\multicolumn{2}{L{\textwidth}}{\descriptionstyle{#2}}\\}
\ifstrempty{#3}
{}
{\multicolumn{2}{L{\textwidth}}{\descriptionstyle{#3}}\\}
\end{tabular*}%
}
I'm not particularly good at latex so I couldn't figure out how to truly decouple jobs from the command so we could have truly n roles. For now 3 roles is decent(?) The idea is if you don't need a role, just leave the pair empty and if you have more than 3, just modify the command I guess?
Decoupling off the description is helpful since I stayed at the same company but moved across projects and organizations and I figure others have probably done the same. I also like the idea I could throw in the tech stack next to its name since it'll (probably) help with ATS checks. But again, sometimes you may not need it so you can just leave it blank.
This is all meant to be used like so:
%-------------------------------------------------------------------------------
% SECTION TITLE
%-------------------------------------------------------------------------------
\cvsection{Work Experience}
%-------------------------------------------------------------------------------
% CONTENT
%-------------------------------------------------------------------------------
\begin{cventries}
%---------------------------------------------------------
\nrolecventrynoitems
{Omnious. Co. 2, Ltd.} % Organization
{Remote, S.Korea} % Location
{Staff Engineer} % Job title
{May 2018 - Present} % Date(s)
{} % Job title
{} % Date(s)
{} % Job title
{} % Date(s)
\cvcustombodydescription
{} % Optional in case you'd like to section out
{
\begin{cvtightprose}
{Blurb for context of job} % Optional mini summary of role
\end{cvtightprose}
}
{
\begin{cvitems} % bullets describing role
\item {Provisioned an easily managable hybrid infrastructure(Amazon AWS + On-premise) utilizing IaC(Infrastructure as Code) tools like Ansible, Packer and Terraform.}
\item {Built fully automated CI/CD pipelines on CircleCI for containerized applications using Docker, AWS ECR and Rancher.}
\end{cvitems}
}
\nrolecventrynoitems
{Omnious. Co. 1, Ltd.} % Organization
{Seoul, S.Korea} % Location
{Senior Software Architect} % Job title
{Jun 2017 - May 2018} % Date(s)
{Software Architect} % Job title
{Jun 2016 - May 2017} % Date(s)
{} % Job title
{} % Date(s)
\cvcustombodydescription
{\textbf{Project Y} (\emph{Node.js, Express, AWS Lambda, React.js})} % Optional in case you'd like to section out
{
\begin{cvtightprose}
{Blurb for context of job} % Optional mini summary of role
\end{cvtightprose}
}
{
\begin{cvitems} % bullets describing role
\item {Designed an overall service architecture and pipelines of the Machine Learning based Fashion Tagging API SaaS product with the micro-services architecture.}
\item {Implemented several API microservices in Node.js Koa and in the serverless AWS Lambda functions.}
\end{cvitems}
}
\cvcustombodydescription
{\textbf{Project X} (\emph{AWS ELK, Filebeat, CloudWatch, S3, Grafana, InfluxDB, CollectD})} % Optional in case you'd like to section out
{
\begin{cvtightprose}
{Blurb for context of job} % Optional mini summary of role
\end{cvtightprose}
}
{
\begin{cvitems} % bullets describing role
\item {Deployed a centralized logging environment(ELK, Filebeat, CloudWatch, S3) which gather log data from docker containers and AWS resources.}
\item {Deployed a centralized monitoring environment(Grafana, InfluxDB, CollectD) which gather system metrics as well as docker run-time metrics.}
\end{cvitems}
}
%---------------------------------------------------------
\end{cventries}
It renders like so:
Hopefully it helps others :wave:
Hi, I'd like to request multiple roles at the same company. I'd imagine in latex it may look a bit like (pseudo)
Potentially even allowing job -> role 1 -> items -> role 2 -> other items? Linkedin handles this rather well.