From 94b95d132b26223b8be2445bb15cc08213bac7f6 Mon Sep 17 00:00:00 2001 From: k4rli Date: Mon, 6 Oct 2025 14:11:51 +0300 Subject: [PATCH] update --- .dockerignore | 10 ++++++++++ CV.md | 39 ++++++++++++++++++++++++--------------- CV.pdf | Bin 32241 -> 30280 bytes Dockerfile | 16 ++++++++++++++++ create-pdf.sh | 2 +- docker.sh | 5 +++++ 6 files changed, 56 insertions(+), 16 deletions(-) create mode 100644 .dockerignore create mode 100644 Dockerfile create mode 100755 docker.sh diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..b2c5e70 --- /dev/null +++ b/.dockerignore @@ -0,0 +1,10 @@ +# Ignore the generated PDF file +CV.pdf + +# Ignore git files +.git +.gitignore + +# Ignore any other files that aren't needed for PDF generation +*.log +.DS_Store diff --git a/CV.md b/CV.md index 0508633..3d9b786 100644 --- a/CV.md +++ b/CV.md @@ -1,8 +1,9 @@ # Karli Udso -Location: Pärnu, Estonia +Location: Tallinn, Estonia E-mail: [karli@supa.ee](mailto:karli@supa.ee) Open to work: Full Stack Software Engineer, Senior Frontend Software Engineer. +Preference: hybrid/remote --- @@ -20,15 +21,21 @@ For me it's key to deeply understand the subject, whether it's business, code, o ### Full Stack Developer at Mountbirch **Mountbirch OÜ** - Tallinn, Estonia -*Jan 2019 - Present (>5 years)* +*Jan 2019 - Present (>6 years)* - Frontend + backend + devops + mobile apps - Many different projects - - **Eesti Energia AS** - developing an array of internal and customer-facing platforms for the Estonian national energy company - - **Holm Bank AS** - developing all sorts of different things; both internal and external platforms, mobile apps, digital signatures with smart cards/integration platforms - - **Confido** - developing a new solution for remote doctor consultations and self-service - - **Ragn Sells AS** - developing for internal platforms to streamline operations - - more smaller projects with various specialties + - **Eesti Energia AS** - developing an array of internal and customer-facing platforms for the Estonian national energy company. long-term (1 year). + - **Holm Bank AS** - developing all sorts of different things. both internal and external platforms, mobile apps, digital signatures with smart cards/integration platforms. long-term (1+ year) + - **Confido** - developing a new solution for remote doctor consultations and self-service. short-term (~4 months) to set up everything for juniors/mids to continue off. + - **Ragn Sells AS** - developing for internal platforms to streamline operations. long-term (1+ year) + - **Telema** - developing backoffice for business software. managing invoices, accounting. long-term (1+ year) + - **JuttAI** - short-term (~3 months) early startup development. management software for sales/hiring/etc leads + - **Soundfr** - short-term (~6 months) early startup development. react-native mobile app with ML model for detecting different sound types for people with disabilities, accompanied with hardware. + - **SensusQ** - military sector project. developing new modules for their main product. partnered with Nortal and joined team with 1 person from Nortal. learned golang from 0, know it well now and afterwards I've used it in several of my own projects. + - **Lehepunkt** - print media. developing backoffice+client portal + - **Medreport** - short-term (~6 months) early startup development. developing B2B/B2C platform for B2C customers to order medical services from different providers, and for B2B customers to be able to offer their employees ~35€ a month as a fringe benefit to be used for the services. + - some other smaller projects with various specialties - Often helping and teaching interns or junior developers ### Full Stack Developer at Estonian Defense Forces @@ -44,7 +51,7 @@ For me it's key to deeply understand the subject, whether it's business, code, o **Freelance Development** - Estonia *2016 - Present (>8 years)* -- Developing short-term projects as freelancer; either personal interest projects or contractual freelance +- Developing short-term projects as freelancer, either personal interest projects or contractual freelance - Example: **OÜ Pigipada** developing a platform to manage road surfacing work - Developing for two start-up attempts with friends @@ -61,9 +68,12 @@ For me it's key to deeply understand the subject, whether it's business, code, o - Databases - mongoDB, redis, mariaDB/MySQL, postgreSQL, any - Frontend - - html5, css, scss/sass, javascript, typescript, react.js, react-router, next.js, vue.js, vanilla javascript, jquery + - Basics + - html5, css/scss/sass, vanilla javascript, jquery + - Modern + - typescript, react.js (good grasp of the ecosystem; react-router, react-query, etc), next.js, vue.js, zod/yup - Backend - - spring, java, typeorm, tsoa, nodejs, typescript, thymeleaf, liquibase/flyway, kafka, rabbitmq, spark + - spring, java, typeorm, tsoa, nodejs, typescript, thymeleaf, liquibase/flyway, kafka, rabbitmq, spark, golang, graphql (FE+BE) - Frontend testing - cypress, detox, mocha, jest, puppeteer - Backend testing @@ -86,7 +96,7 @@ For me it's key to deeply understand the subject, whether it's business, code, o Bachelor's degree, Information Technology *2016 - 2019* -- Not completed due to full-time work +- Not finished due to full-time work, ~85%. Course programme itself was too basic and did not seem beneficial. ### Pärnu Koidula Gümnaasium @@ -99,9 +109,8 @@ High School Diploma - English (Native or bilingual proficiency) - Estonian (Native or bilingual proficiency) +- Italian (Elementary+ proficiency) - Spanish (Elementary proficiency) -- Italian (Elementary proficiency) -- Russian (Elementary proficiency) - Finnish (Elementary proficiency) --- @@ -114,9 +123,9 @@ High School Diploma - Motorsports, cars, motorcycles, mechanical works - Travel and new environments - Movies, music, arts -- PC gaming +- PC gaming sometimes (CS, sim racing) - Sports; tennis, running, bicycling --- -01/04/2024 +01/09/2025 diff --git a/CV.pdf b/CV.pdf index 6af1e5710538fe020c0cf6d8b6c6c26c60aba678..fd8a64e6288fa0b268398ad04bf249a6125e5f1f 100644 GIT binary patch delta 27936 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 literal 32241 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 diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..635d25e --- /dev/null +++ b/Dockerfile @@ -0,0 +1,16 @@ +FROM alpine:latest + +RUN apk add --no-cache \ + pandoc \ + groff \ + ghostscript \ + bash + +WORKDIR /app + +COPY create-pdf.sh ./ +RUN chmod +x create-pdf.sh + +COPY CV.md ./ + +CMD ["./create-pdf.sh"] diff --git a/create-pdf.sh b/create-pdf.sh index 4dca370..5868b27 100755 --- a/create-pdf.sh +++ b/create-pdf.sh @@ -3,4 +3,4 @@ pandoc \ --pdf-engine=pdfroff \ --toc-depth=1 \ - CV.md -o CV.pdf + CV.md -o ./output/CV.pdf diff --git a/docker.sh b/docker.sh new file mode 100755 index 0000000..6ec5a6c --- /dev/null +++ b/docker.sh @@ -0,0 +1,5 @@ +#!/bin/bash + +docker build -t cv-generator . + +docker run --rm -v $(pwd):/app/output cv-generator