Skip to content

Commit

Permalink
update 21-aug-2024: adds yektanet in detail
Browse files Browse the repository at this point in the history
  • Loading branch information
FeryET committed Aug 21, 2024
1 parent d04baf9 commit ae70ac5
Show file tree
Hide file tree
Showing 6 changed files with 57 additions and 47 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ jobs:
- name: Compile LaTeX document
uses: xu-cheng/latex-action@v3
with:
root_file: $TEX_FILE
root_file: ${{ env.TEX_FILE }}
- name: move
run: mkdir -p ${{ env.ARTIFACTS_DIR}} && mv ${{ env.PDF_FILE }} ${{ env.ARTIFACTS_DIR }}
- name: Upload PDF file
Expand Down
2 changes: 1 addition & 1 deletion farhood-etaati-cv.tex
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@
\setTwitterLink{https://twitter.com/farhoodetaati}

\setPdfKeywords{ resume, cv, machine-learning, devops, mlops, software-engineering, backend, python, linux }
\setPdfSubject{ MLOps Engineer }
\setPdfSubject{ Software Engineer }

% Override any variables/commands through a private file
\InputIfFileExists{\jobname.tmp}{}{}
Expand Down
13 changes: 10 additions & 3 deletions resume.cls
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@
\usepackage{trimspaces} % Required for triming variable values (https://tex.stackexchange.com/a/484290)
\usepackage{fontawesome} % Required for icons. List of available icons at http://ctan.imsc.res.in/fonts/fontawesome/doc/fontawesome.pdf
\usepackage{datetime} % Required for custom date formatting
\usepackage[left=0.5in,top=0.25in,right=0.5in,bottom=0.25in]{geometry} % Required for setting Document margins
\usepackage[left=0.75in,top=0.75in,right=0.75in,bottom=0.75in]{geometry} % Required for setting Document margins
\usepackage{scrextend}
\pagestyle{empty} % Suppress page numbers

Expand Down Expand Up @@ -80,11 +80,9 @@
\newbox\anonvhbox
\newboolean{IncludeAnonItem}
\setboolean{IncludeAnonItem}{#1}

\setbox\anonvhbox\vbox{%
#2
\unskip\unpenalty\unpenalty}

\ifthenelse{\boolean{IncludeAnonItem}}{
\unvbox\anonvhbox
}{ }
Expand Down Expand Up @@ -320,6 +318,15 @@
}\unskip
}{}

\newcommand{\rEducationSubsectionHeading}[6]{ % 6 input arguments: school name, dates, degree, location, GPA, and notes
\textbf{#1}, #4 \hfill \textit{#2} \\ % Bold school name and location, italic dates aligned to the right
\textit{#3}, GPA: #5 % Italic degree, normal font GPA
\ifthenelse{\equal{#6}{}}{}{ % If notes are provided
\begin{addmargin}[10pt]{20pt} % Indented notes
\textit{#6} % Italic notes
\end{addmargin}
}
}
% The below commands define the whitespace after certain things in the document - they can be \smallskip, \medskip or \bigskip
\def\namesize{\huge} % Size of the name at the top of the document
\def\sectionlineskip{\medskip} % The space above the horizontal line for each section
Expand Down
36 changes: 13 additions & 23 deletions sections/education.tex
Original file line number Diff line number Diff line change
Expand Up @@ -4,31 +4,21 @@
%----------------------------------------------------------------------------------------
% EDUCATION SECTION
%----------------------------------------------------------------------------------------


\rSubsectionHeading
{Electrical and Computer Engineering School, \nem University of Tehran}
{ \fmtdate{8}{2020} - Present }
{\normalfont M.Sc. in Electrical Engineering, GPA: 3.94/4.00}
% 6 input arguments: school name, dates, degree, location, GPA, and notes
\rEducationSubsectionHeading
{University of Tehran, School of ECE}
{ \fmtdate{8}{2020} - \fmtdate{8}{2023} }
{M.Sc. in Electrical Engineering}
{Tehran, Iran}
% {
% {\bfseries Courses}: Machine Learning, Deep Learning, Biosignal Processing, Statistical Inference, Image Processing.
% \\
% {\bfseries TAShips}: Machine Learning, Deep Learning. \smallskip
% }

\rSubsectionHeading
{Electrical and Computer Engineering School, \nem University of Tehran}
{18.30/20.00}
{Dropped out before defending the thesis with 26 passed credits.}

\rEducationSubsectionHeading
{University of Tehran, School of ECE}
{ \fmtdate{8}{2013} - \fmtdate{8}{2018} }
{\normalfont B.Sc. in Electrical Engineering, GPA: 3.36/4.00}
{B.Sc. in Electrical Engineering}
{Tehran, Iran}
% {
% {\bfseries Courses}: Advanced Programming, Data Structures and Algorithms, Control Theory, Signal Processing, Computer Architecture.
% \\
% {\bfseries TAShips}: Control Theory, Linear Algebra, Microprocessors. \smallskip
% }


%----------------------------------------------------------------------------------------
{16.11/20.00}
{}
\end{rSection}
\end{document}
12 changes: 6 additions & 6 deletions sections/skills.tex
Original file line number Diff line number Diff line change
Expand Up @@ -8,18 +8,18 @@
% \SetTblrInner{rowsep=4pt,colsep=2em, cells={t,j}, vspan=default}
% \SetTblrStyle{element}{styles}
% \begin{tabular}{ @{} >{\bfseries}l @{\hspace{6ex}} l }
%
%
% Languages \& Frameworks & Python, Flask, FastAPI, PyTorch, Java, Kotlin, C/C++, Rust \\
% Software \& Tools & \makecell[l]{ \\ Docker, Kubernetes, Nginx, Gitlab, Ansible, MongoDB, Postgres, Redis, Grafana, \\Prometheus, ProxMox } \\ \\
% Other & Linux, Bash, SSH, Git, LaTeX, Postman\\
%
%
% \end{tabular}
\begin{tblr}{colspec={X[3]X[7]}, vspan=default, colsep=5pt, rowsep=2pt, cells={t,j}, cell{2}{2}={r=2}{l}, width=0.95\linewidth}

{Languages} & \normalfont {Python, Kotlin, Java, Rust, C++, Bash} \\
{Libraries \& Frameworks} & \normalfont {Prefect, Flask, FastAPI, gRPC, SQLAlchemy, PyTorch, Keras, Tensorflow, Scikit-Learn, Pandas, Gensim, Spacy, Transformers} \\ \\
{Software \& Tools} & \normalfont {Docker, Ansible, Minio, Gitlab CI, Nginx, Grafana, Prometheus, Loki, Sysbox} \\
{Other} & \normalfont {Linux, SSH, Systemd, Git, Gitlab, LaTeX, Postman} \\
{Languages} & \normalfont {Python, Go, Rust, Kotlin, Java, C++, Bash} \\
{Libraries \& Frameworks} & \normalfont {Airflow, Prefect, Flask, FastAPI, gRPC, SQLAlchemy, PyTorch, Keras, Tensorflow, Scikit-Learn, Pandas, Gensim, Spacy, Transformers} \\ \\
{Software \& Tools} & \normalfont {K8s, Helm, Docker, Ansible, Git, Gitlab CI, NGINX, Prometheus, Loki} \\
{Other} & \normalfont {Linux, LaTeX, Postman, Grafana} \\
\end{tblr}
%----------------------------------------------------------------------------------------
\end{rSection}
Expand Down
39 changes: 26 additions & 13 deletions sections/work.tex
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,25 @@
%----------------------------------------------------------------------------------------
% WORK EXPERIENCE SECTION
%----------------------------------------------------------------------------------------
\begin{rWorkSection}
{\href{https://yektanet.com/}{Yektanet}}
{Tehran, Iran}

\vspace{-1em}
{\em Software Engineer} \hfill {\em Dec. 2023 - Present} \hspace{10pt}
\normalfont
\begin{list}{$\cdot$}{\leftmargin=10pt\normalfont \rightmargin=20pt}
\itemsep -0.5em
\item Took initiative in the design and development process of a brand new service to handle 5x rps with 0.1x resources using go to replace an old bottleneck python service.
\item Took inititative in the process of revamping the team's monitoring/alerting mechanism, developing various new dashboards and alert rules with on-call support.
\item Administered a 10 Node hadooop cluster, with high availability settings using Ansible deployed on baremetal.
\item Administered a 16 Node K8s cluster for the data platform team, with various production services on it (Airflow, Spark, Kafka Connectors).
\item Utilized, improved and developed various helm charts for internal toolings and production services, e.g. Hue HDFS Browser, JupyterHub.
\item Adminstered a K8s based spark development workflow utilizing JupyterHub, SparkOperator, Airflow which enabled data teams to rapidly prototype and create data.
\item Implemented an automatic data lineage tracking pipeline using Datahub's integrations with CI/CD pipelines to increase metadata observability company wide.
\item Introduced a set of MLOps toolings to define the standard ml workflow in Yektanet using Ray, Spark, MLFlow on top of k8s.
\end{list}
\end{rWorkSection}

\begin{rWorkSection}
{\href{https://aimedic.co/}{AIMedic}}
Expand All @@ -14,22 +33,16 @@
\normalfont
\begin{list}{$\cdot$}{\leftmargin=10pt\normalfont \rightmargin=20pt}
\itemsep -0.5em
\item (Ongoing) Led the team in the process of developing an MVP of an MLOps as a service platform. Stack: Prefect, gRPC, Flask, SQLAlchemy, Celery, Postgres, Redis, Minio, Ansible, Docker.
\item Led the team in the process of developing an MVP of an MLOps as a service platform. Stack: Prefect, gRPC, Flask, SQLAlchemy, Celery, Postgres, Redis, Minio, Ansible, Docker.
\item Led the process of developing internal tools and plugins for ML pipelines, e.g. data registry, model registry and feature store solutions. Stack: Python, FastAPI, Docker, DVC, Metaflow, MLflow, Postgres, Minio.
\item Defined and standardized development process and led the team to implement CI pipelines for all services using Gitlab CI and Harbor.
% \item Had full ownership of changing service architectures from monolith to service based and micro services, which boosted the successful deployments rate by 200\% in the following quarter.
\item Deployed containerized services using Docker, Docker Swarm and Anisble.
\item Maintained, and monitored deployed services using Grafana, Prometheus and Loki.
\item Administrated bare-metal infrastructure in the inter-company private cloud solution using ProxMox.

\end{list}
{\em ML Team Lead} \hfill {\em Aug. 2021 - Mar. 2022}
\normalfont
\begin{list}{$\cdot$}{\leftmargin=10pt\normalfont \rightmargin=20pt}
\itemsep -0.5em
\item Standardized the process of service monitoring by onboarding development teams to the Grafana, Loki, Prometheus stack, maintining the monitoring platforms and improving observability.
% \end{list}
% {\em ML Team Lead} \hfill {\em Aug. 2021 - Mar. 2022}
% \normalfont
% \begin{list}{$\cdot$}{\leftmargin=10pt\normalfont \rightmargin=20pt}
% \itemsep -0.5em
\item Led the team to develop ML solutions for arrhythmic ECG and epileptic EEG classification tasks. Stack: PyTorch, MNE, Pandas, HDF5.
\item Led the team to develop and deploy webservices for signal classification AI solutions. Stack: PyTorch, FastAPI and Docker.
\item Implemented a hyperparameter optimization pipeline for model optimization, which resulted in a 3\% F1-score boost in the ECG classificaiton task.
\end{list}
\end{rWorkSection}

Expand Down

0 comments on commit ae70ac5

Please sign in to comment.