init
This commit is contained in:
commit
6b76ba6b9c
66 changed files with 530 additions and 0 deletions
0
.gitignore
vendored
Normal file
0
.gitignore
vendored
Normal file
5
.idea/.gitignore
generated
vendored
Normal file
5
.idea/.gitignore
generated
vendored
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
# Default ignored files
|
||||||
|
/shelf/
|
||||||
|
/workspace.xml
|
||||||
|
# Editor-based HTTP Client requests
|
||||||
|
/httpRequests/
|
8
.idea/modules.xml
generated
Normal file
8
.idea/modules.xml
generated
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project version="4">
|
||||||
|
<component name="ProjectModuleManager">
|
||||||
|
<modules>
|
||||||
|
<module fileurl="file://$PROJECT_DIR$/.idea/resume.iml" filepath="$PROJECT_DIR$/.idea/resume.iml" />
|
||||||
|
</modules>
|
||||||
|
</component>
|
||||||
|
</project>
|
12
.idea/resume.iml
generated
Normal file
12
.idea/resume.iml
generated
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<module type="WEB_MODULE" version="4">
|
||||||
|
<component name="NewModuleRootManager">
|
||||||
|
<content url="file://$MODULE_DIR$">
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/.tmp" />
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/temp" />
|
||||||
|
<excludeFolder url="file://$MODULE_DIR$/tmp" />
|
||||||
|
</content>
|
||||||
|
<orderEntry type="inheritedJdk" />
|
||||||
|
<orderEntry type="sourceFolder" forTests="false" />
|
||||||
|
</component>
|
||||||
|
</module>
|
6
.idea/vcs.xml
generated
Normal file
6
.idea/vcs.xml
generated
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project version="4">
|
||||||
|
<component name="VcsDirectoryMappings">
|
||||||
|
<mapping directory="" vcs="Git" />
|
||||||
|
</component>
|
||||||
|
</project>
|
0
JetBrainsMono/ttf/JetBrainsMono-Bold.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMono-Bold.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMono-BoldItalic.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMono-BoldItalic.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMono-ExtraBold.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMono-ExtraBold.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMono-ExtraBoldItalic.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMono-ExtraBoldItalic.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMono-ExtraLight.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMono-ExtraLight.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMono-ExtraLightItalic.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMono-ExtraLightItalic.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMono-Italic.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMono-Italic.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMono-Light.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMono-Light.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMono-LightItalic.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMono-LightItalic.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMono-Medium.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMono-Medium.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMono-MediumItalic.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMono-MediumItalic.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMono-Regular.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMono-Regular.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMono-SemiBold.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMono-SemiBold.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMono-SemiBoldItalic.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMono-SemiBoldItalic.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMono-Thin.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMono-Thin.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMono-ThinItalic.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMono-ThinItalic.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMonoNL-Bold.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMonoNL-Bold.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMonoNL-BoldItalic.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMonoNL-BoldItalic.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMonoNL-ExtraBold.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMonoNL-ExtraBold.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMonoNL-ExtraBoldItalic.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMonoNL-ExtraBoldItalic.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMonoNL-ExtraLight.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMonoNL-ExtraLight.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMonoNL-ExtraLightItalic.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMonoNL-ExtraLightItalic.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMonoNL-Italic.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMonoNL-Italic.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMonoNL-Light.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMonoNL-Light.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMonoNL-LightItalic.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMonoNL-LightItalic.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMonoNL-Medium.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMonoNL-Medium.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMonoNL-MediumItalic.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMonoNL-MediumItalic.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMonoNL-Regular.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMonoNL-Regular.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMonoNL-SemiBold.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMonoNL-SemiBold.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMonoNL-SemiBoldItalic.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMonoNL-SemiBoldItalic.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMonoNL-Thin.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMonoNL-Thin.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMonoNL-ThinItalic.ttf
Normal file
0
JetBrainsMono/ttf/JetBrainsMonoNL-ThinItalic.ttf
Normal file
BIN
JetBrainsMono/woff2/JetBrainsMono-Bold.woff2
Normal file
BIN
JetBrainsMono/woff2/JetBrainsMono-Bold.woff2
Normal file
Binary file not shown.
BIN
JetBrainsMono/woff2/JetBrainsMono-BoldItalic.woff2
Normal file
BIN
JetBrainsMono/woff2/JetBrainsMono-BoldItalic.woff2
Normal file
Binary file not shown.
BIN
JetBrainsMono/woff2/JetBrainsMono-ExtraBold.woff2
Normal file
BIN
JetBrainsMono/woff2/JetBrainsMono-ExtraBold.woff2
Normal file
Binary file not shown.
BIN
JetBrainsMono/woff2/JetBrainsMono-ExtraBoldItalic.woff2
Normal file
BIN
JetBrainsMono/woff2/JetBrainsMono-ExtraBoldItalic.woff2
Normal file
Binary file not shown.
BIN
JetBrainsMono/woff2/JetBrainsMono-ExtraLight.woff2
Normal file
BIN
JetBrainsMono/woff2/JetBrainsMono-ExtraLight.woff2
Normal file
Binary file not shown.
BIN
JetBrainsMono/woff2/JetBrainsMono-ExtraLightItalic.woff2
Normal file
BIN
JetBrainsMono/woff2/JetBrainsMono-ExtraLightItalic.woff2
Normal file
Binary file not shown.
BIN
JetBrainsMono/woff2/JetBrainsMono-Italic.woff2
Normal file
BIN
JetBrainsMono/woff2/JetBrainsMono-Italic.woff2
Normal file
Binary file not shown.
BIN
JetBrainsMono/woff2/JetBrainsMono-Light.woff2
Normal file
BIN
JetBrainsMono/woff2/JetBrainsMono-Light.woff2
Normal file
Binary file not shown.
BIN
JetBrainsMono/woff2/JetBrainsMono-LightItalic.woff2
Normal file
BIN
JetBrainsMono/woff2/JetBrainsMono-LightItalic.woff2
Normal file
Binary file not shown.
BIN
JetBrainsMono/woff2/JetBrainsMono-Medium.woff2
Normal file
BIN
JetBrainsMono/woff2/JetBrainsMono-Medium.woff2
Normal file
Binary file not shown.
BIN
JetBrainsMono/woff2/JetBrainsMono-MediumItalic.woff2
Normal file
BIN
JetBrainsMono/woff2/JetBrainsMono-MediumItalic.woff2
Normal file
Binary file not shown.
BIN
JetBrainsMono/woff2/JetBrainsMono-Regular.woff2
Normal file
BIN
JetBrainsMono/woff2/JetBrainsMono-Regular.woff2
Normal file
Binary file not shown.
BIN
JetBrainsMono/woff2/JetBrainsMono-SemiBold.woff2
Normal file
BIN
JetBrainsMono/woff2/JetBrainsMono-SemiBold.woff2
Normal file
Binary file not shown.
BIN
JetBrainsMono/woff2/JetBrainsMono-SemiBoldItalic.woff2
Normal file
BIN
JetBrainsMono/woff2/JetBrainsMono-SemiBoldItalic.woff2
Normal file
Binary file not shown.
BIN
JetBrainsMono/woff2/JetBrainsMono-Thin.woff2
Normal file
BIN
JetBrainsMono/woff2/JetBrainsMono-Thin.woff2
Normal file
Binary file not shown.
BIN
JetBrainsMono/woff2/JetBrainsMono-ThinItalic.woff2
Normal file
BIN
JetBrainsMono/woff2/JetBrainsMono-ThinItalic.woff2
Normal file
Binary file not shown.
7
README.md
Normal file
7
README.md
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
# My CV Repo
|
||||||
|
|
||||||
|
## Icons
|
||||||
|
Im using some heroicons icons
|
||||||
|
|
||||||
|
## Original Resume PDF
|
||||||
|
I was originally using [resume.io](https://resume.io) to maintain my resume (login with a magic link.), if you ever need to get back to it
|
BIN
assets/In-Blue-48.png
Executable file
BIN
assets/In-Blue-48.png
Executable file
Binary file not shown.
After Width: | Height: | Size: 480 B |
1
assets/github-mark.svg
Normal file
1
assets/github-mark.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg width="98" height="96" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M48.854 0C21.839 0 0 22 0 49.217c0 21.756 13.993 40.172 33.405 46.69 2.427.49 3.316-1.059 3.316-2.362 0-1.141-.08-5.052-.08-9.127-13.59 2.934-16.42-5.867-16.42-5.867-2.184-5.704-5.42-7.17-5.42-7.17-4.448-3.015.324-3.015.324-3.015 4.934.326 7.523 5.052 7.523 5.052 4.367 7.496 11.404 5.378 14.235 4.074.404-3.178 1.699-5.378 3.074-6.6-10.839-1.141-22.243-5.378-22.243-24.283 0-5.378 1.94-9.778 5.014-13.2-.485-1.222-2.184-6.275.486-13.038 0 0 4.125-1.304 13.426 5.052a46.97 46.97 0 0 1 12.214-1.63c4.125 0 8.33.571 12.213 1.63 9.302-6.356 13.427-5.052 13.427-5.052 2.67 6.763.97 11.816.485 13.038 3.155 3.422 5.015 7.822 5.015 13.2 0 18.905-11.404 23.06-22.324 24.283 1.78 1.548 3.316 4.481 3.316 9.126 0 6.6-.08 11.897-.08 13.526 0 1.304.89 2.853 3.316 2.364 19.412-6.52 33.405-24.935 33.405-46.691C97.707 22 75.788 0 48.854 0z" fill="#24292f"/></svg>
|
After Width: | Height: | Size: 963 B |
3
assets/icon-email.svg
Normal file
3
assets/icon-email.svg
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
<svg data-slot="icon" aria-hidden="true" fill="none" stroke-width="1.5" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path d="M21.75 6.75v10.5a2.25 2.25 0 0 1-2.25 2.25h-15a2.25 2.25 0 0 1-2.25-2.25V6.75m19.5 0A2.25 2.25 0 0 0 19.5 4.5h-15a2.25 2.25 0 0 0-2.25 2.25m19.5 0v.243a2.25 2.25 0 0 1-1.07 1.916l-7.5 4.615a2.25 2.25 0 0 1-2.36 0L3.32 8.91a2.25 2.25 0 0 1-1.07-1.916V6.75" stroke-linecap="round" stroke-linejoin="round"></path>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 480 B |
3
assets/icon-location.svg
Normal file
3
assets/icon-location.svg
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
<svg data-slot="icon" aria-hidden="true" fill="none" stroke-width="1.5" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path d="M9 6.75V15m6-6v8.25m.503 3.498 4.875-2.437c.381-.19.622-.58.622-1.006V4.82c0-.836-.88-1.38-1.628-1.006l-3.869 1.934c-.317.159-.69.159-1.006 0L9.503 3.252a1.125 1.125 0 0 0-1.006 0L3.622 5.689C3.24 5.88 3 6.27 3 6.695V19.18c0 .836.88 1.38 1.628 1.006l3.869-1.934c.317-.159.69-.159 1.006 0l4.994 2.497c.317.158.69.158 1.006 0Z" stroke-linecap="round" stroke-linejoin="round"></path>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 550 B |
3
assets/icon-mobile.svg
Normal file
3
assets/icon-mobile.svg
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
<svg data-slot="icon" aria-hidden="true" fill="none" stroke-width="1.5" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path d="M10.5 1.5H8.25A2.25 2.25 0 0 0 6 3.75v16.5a2.25 2.25 0 0 0 2.25 2.25h7.5A2.25 2.25 0 0 0 18 20.25V3.75a2.25 2.25 0 0 0-2.25-2.25H13.5m-3 0V3h3V1.5m-3 0h3m-3 18.75h3" stroke-linecap="round" stroke-linejoin="round"></path>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 390 B |
BIN
assets/pfp.jpeg
Normal file
BIN
assets/pfp.jpeg
Normal file
Binary file not shown.
After Width: | Height: | Size: 102 KiB |
227
cv.html
Normal file
227
cv.html
Normal file
|
@ -0,0 +1,227 @@
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<title>Resume of John Morris</title>
|
||||||
|
<link rel="stylesheet" href="styles/jetbrains-mono.css"/>
|
||||||
|
<link rel="stylesheet" href="styles/reset.css"/>
|
||||||
|
<link rel="stylesheet" href="styles/style.css"/>
|
||||||
|
</head>
|
||||||
|
<body class="a4">
|
||||||
|
<header>
|
||||||
|
<!-- <img class="pfp" alt="an image of john" src="assets/pfp.jpeg"/>-->
|
||||||
|
<div>
|
||||||
|
<h1>John Morris</h1>
|
||||||
|
<p>Software Developer</p>
|
||||||
|
</div>
|
||||||
|
</header>
|
||||||
|
|
||||||
|
<main>
|
||||||
|
<section id=profile>
|
||||||
|
<h2>Profile</h2>
|
||||||
|
<p>
|
||||||
|
I am a software developer, with passion for creativity and learning. My
|
||||||
|
ultimate goal as a developer is to make cool things that help people in
|
||||||
|
whatever way they need.
|
||||||
|
</p>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section id=employment-history class="experiences">
|
||||||
|
<h2>Employment History</h2>
|
||||||
|
|
||||||
|
<section id=lead-software-engineer-hyre class=experience>
|
||||||
|
<h3>Lead Software Engineer @ HYRE Solutions, Berlin</h3>
|
||||||
|
<div class=experience-time-span>September 2022 - Present</div>
|
||||||
|
<ul class=experience-description>
|
||||||
|
<li>
|
||||||
|
I am responsible for software development of the sales recruitment
|
||||||
|
platform HYRE Talents, using TypeScript+Vue in the frontend and
|
||||||
|
C#/ASP.NET in the backend, as well as managing devops in Azure.
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
I provide technical support to teammates and clients.
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section id=software-developer-tutao class=experience>
|
||||||
|
<h3>Software Developer @ Tutao, Hannover</h3>
|
||||||
|
<div class=experience-time-span>September 2020 - September 2022</div>
|
||||||
|
<ul class=experience-description>
|
||||||
|
<li>
|
||||||
|
As a part of the product team I implemented improvements and
|
||||||
|
bug fixes for the web, desktop (Electron), Android and iOS variants
|
||||||
|
of the app using various languages and frameworks, namely:
|
||||||
|
TypeScript/JavaScript, mithril (JS UI Library), ElectronJS, Swift, Kotlin,
|
||||||
|
Java.
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
Worked on devops and had a role in improving the in-house build
|
||||||
|
system for the app, as well as streamlining CI/CD in jenkins.
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
Was instrumental in improving development practices, such as
|
||||||
|
participating in the introduction of scrum to the small team, and
|
||||||
|
continually working on architectural improvements such as the
|
||||||
|
modularisation of the codebase.
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section id=software-developer-fungii class=experience>
|
||||||
|
<h3>Software Developer @ Fungii - Melbourne Gourmet Mushrooms, Melbourne, Australia</h3>
|
||||||
|
<div class=experience-time-span>2018</div>
|
||||||
|
<ul class=experience-description>
|
||||||
|
<li>
|
||||||
|
Developed a greenhouse monitoring and logging system for a
|
||||||
|
Melbourne based culinary mushroom grower.
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
Utilised Arduino/C++ for monitoring and reporting, and
|
||||||
|
Python-Flask+SQLite for a RESTful logging API and user interface
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section id=web-developer-adrian-devries class=experience>
|
||||||
|
<h3>Web Developer @ Adrian Devries, Melbourne, Australia</h3>
|
||||||
|
<div class=experience-time-span>2018</div>
|
||||||
|
<ul class=experience-description>
|
||||||
|
<li>
|
||||||
|
Made an artist CV web-page for Melbourne based visual artist Adrian
|
||||||
|
Devries.
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
Used vanilla HTML5/CSS/JS for the webpage, and hosted via
|
||||||
|
HostGator's shared hosting
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</section>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section id=education class="experiences">
|
||||||
|
<h2>Education</h2>
|
||||||
|
|
||||||
|
<section id=bacherlor-cs-rmit class=experience>
|
||||||
|
<h3>Bachelor of Computer Science, RMIT, Melbourne, Australia</h3>
|
||||||
|
<div class=experience-time-span>2018 - 2020</div>
|
||||||
|
<ul class=experience-description>
|
||||||
|
<li>
|
||||||
|
Practiced developing software in a team based environment, using
|
||||||
|
techniques and technologies such as: Agile, UML, Git, Trello, etc.
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
Learnt to analyse and implement algorithms to solve concrete
|
||||||
|
problems.
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
Developed a mock IoT application for a library management system
|
||||||
|
using Python and Raspberry Pi.
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section id=associate-degree-it-rmit class=experience>
|
||||||
|
<h3>Associate Degree of IT, RMIT, Melbourne, Australia</h3>
|
||||||
|
<div class=experience-time-span>2017 - 2018</div>
|
||||||
|
<ul class=experience-description>
|
||||||
|
<li>
|
||||||
|
Studies included computer networking (primarily OSI layers 2-4),
|
||||||
|
database design and management, and basic web development and
|
||||||
|
UX design
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</section>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section id=courses class="experiences">
|
||||||
|
<h2>Courses</h2>
|
||||||
|
<section id=cs50x class=experience>
|
||||||
|
<h3>CS50X, edX</h3>
|
||||||
|
<div class=experience-time-span>2016-2017</div>
|
||||||
|
</section>
|
||||||
|
</section>
|
||||||
|
</main>
|
||||||
|
<menu class="links">
|
||||||
|
<li>
|
||||||
|
<a href="https://github.com/johnbotris">
|
||||||
|
<img
|
||||||
|
class="icon"
|
||||||
|
alt="the github logo"
|
||||||
|
src="assets/github-mark.svg"
|
||||||
|
>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="https://www.linkedin.com/in/john-morris-06a09324b/">
|
||||||
|
<img
|
||||||
|
class="icon"
|
||||||
|
alt="the linkedin logo"
|
||||||
|
src="assets/In-Blue-48.png">
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
</menu>
|
||||||
|
<aside>
|
||||||
|
<dl id=details class="details">
|
||||||
|
<dt>
|
||||||
|
<img
|
||||||
|
class="icon"
|
||||||
|
alt="location"
|
||||||
|
aria-description="location"
|
||||||
|
src="assets/icon-location.svg"
|
||||||
|
/>
|
||||||
|
</dt>
|
||||||
|
<dd>Berlin</dd>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<img
|
||||||
|
class="icon"
|
||||||
|
alt="phone"
|
||||||
|
aria-description="phone number"
|
||||||
|
src="assets/icon-mobile.svg"
|
||||||
|
/>
|
||||||
|
</dt>
|
||||||
|
<dd><a href="tel:+491789190925">+49 178 9190925</a></dd>
|
||||||
|
|
||||||
|
<dt><img class="icon" alt="email" aria-description="email address"
|
||||||
|
src="assets/icon-email.svg"/></dt>
|
||||||
|
<dd><a href="mailto:me@johnmorr.is">me@johnmorr.is</a></dd>
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
<section id="skills">
|
||||||
|
<h2>Skills</h2>
|
||||||
|
|
||||||
|
<section class="skills-section">
|
||||||
|
<h3>Programming languages</h3>
|
||||||
|
<ul>
|
||||||
|
<li>TypeScript/JavaScript</li>
|
||||||
|
<li>C#</li>
|
||||||
|
<li>Java</li>
|
||||||
|
<li>Kotlin</li>
|
||||||
|
<li>Rust</li>
|
||||||
|
</ul>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section class="skills-section">
|
||||||
|
<h3>Frameworks and Technologies</h3>
|
||||||
|
<ul>
|
||||||
|
<li>VueJS+Nuxt</li>
|
||||||
|
<li>MithrilJS</li>
|
||||||
|
<li>Azure Admin</li>
|
||||||
|
<li>Linux Sysadmin</li>
|
||||||
|
<li>Jenkins CI</li>
|
||||||
|
</ul>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section class="skills-section">
|
||||||
|
<h3>Human languages</h3>
|
||||||
|
<dl>
|
||||||
|
<dt>English</dt>
|
||||||
|
<dd>Native</dd>
|
||||||
|
|
||||||
|
<dt>German</dt>
|
||||||
|
<dd>B2</dd>
|
||||||
|
</dl>
|
||||||
|
</section>
|
||||||
|
</section>
|
||||||
|
</aside>
|
||||||
|
</body>
|
||||||
|
</html>
|
21
licenses/heroicons.LICENSE
Normal file
21
licenses/heroicons.LICENSE
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
MIT License
|
||||||
|
|
||||||
|
Copyright (c) Tailwind Labs, Inc.
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
of this software and associated documentation files (the "Software"), to deal
|
||||||
|
in the Software without restriction, including without limitation the rights
|
||||||
|
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
copies of the Software, and to permit persons to whom the Software is
|
||||||
|
furnished to do so, subject to the following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included in all
|
||||||
|
copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||||
|
SOFTWARE.
|
BIN
original-resume.pdf
Normal file
BIN
original-resume.pdf
Normal file
Binary file not shown.
71
styles/jetbrains-mono.css
Normal file
71
styles/jetbrains-mono.css
Normal file
|
@ -0,0 +1,71 @@
|
||||||
|
@font-face {
|
||||||
|
font-family: 'JetBrains Mono';
|
||||||
|
src: url('../JetBrainsMono/woff2/JetBrainsMono-BoldItalic.woff2') format('woff2'),
|
||||||
|
url('../JetBrainsMono/ttf/JetBrainsMono-BoldItalic.ttf') format('ttf');
|
||||||
|
font-weight: 700;
|
||||||
|
font-style: italic;
|
||||||
|
font-display: swap;
|
||||||
|
}
|
||||||
|
|
||||||
|
@font-face {
|
||||||
|
font-family: 'JetBrains Mono';
|
||||||
|
src: url('../JetBrainsMono/woff2/JetBrainsMono-Bold.woff2') format('woff2'),
|
||||||
|
url('../JetBrainsMono/ttf/JetBrainsMono-Bold.ttf') format('ttf');
|
||||||
|
font-weight: 700;
|
||||||
|
font-style: normal;
|
||||||
|
font-display: swap;
|
||||||
|
}
|
||||||
|
|
||||||
|
@font-face {
|
||||||
|
font-family: 'JetBrains Mono';
|
||||||
|
src: url('../JetBrainsMono/woff2/JetBrainsMono-ExtraBoldItalic.woff2') format('woff2'),
|
||||||
|
url('../JetBrainsMono/ttf/JetBrainsMono-ExtraBoldItalic.ttf') format('ttf');
|
||||||
|
font-weight: 800;
|
||||||
|
font-style: italic;
|
||||||
|
font-display: swap;
|
||||||
|
}
|
||||||
|
|
||||||
|
@font-face {
|
||||||
|
font-family: 'JetBrains Mono';
|
||||||
|
src: url('../JetBrainsMono/woff2/JetBrainsMono-ExtraBold.woff2') format('woff2'),
|
||||||
|
url('../JetBrainsMono/ttf/JetBrainsMono-ExtraBold.ttf') format('ttf');
|
||||||
|
font-weight: 800;
|
||||||
|
font-style: normal;
|
||||||
|
font-display: swap;
|
||||||
|
}
|
||||||
|
|
||||||
|
@font-face {
|
||||||
|
font-family: 'JetBrains Mono';
|
||||||
|
src: url('../JetBrainsMono/woff2/JetBrainsMono-Italic.woff2') format('woff2'),
|
||||||
|
url('../JetBrainsMono/ttf/JetBrainsMono-Italic.ttf') format('ttf');
|
||||||
|
font-weight: 400;
|
||||||
|
font-style: italic;
|
||||||
|
font-display: swap;
|
||||||
|
}
|
||||||
|
|
||||||
|
@font-face {
|
||||||
|
font-family: 'JetBrains Mono';
|
||||||
|
src: url('../JetBrainsMono/woff2/JetBrainsMono-MediumItalic.woff2') format('woff2'),
|
||||||
|
url('../JetBrainsMono/ttf/JetBrainsMono-MediumItalic.ttf') format('ttf');
|
||||||
|
font-weight: 500;
|
||||||
|
font-style: italic;
|
||||||
|
font-display: swap;
|
||||||
|
}
|
||||||
|
|
||||||
|
@font-face {
|
||||||
|
font-family: 'JetBrains Mono';
|
||||||
|
src: url('../JetBrainsMono/woff2/JetBrainsMono-Medium.woff2') format('woff2'),
|
||||||
|
url('../JetBrainsMono/ttf/JetBrainsMono-Medium.ttf') format('ttf');
|
||||||
|
font-weight: 500;
|
||||||
|
font-style: normal;
|
||||||
|
font-display: swap;
|
||||||
|
}
|
||||||
|
|
||||||
|
@font-face {
|
||||||
|
font-family: 'JetBrains Mono';
|
||||||
|
src: url('../JetBrainsMono/woff2/JetBrainsMono-Regular.woff2') format('woff2'),
|
||||||
|
url('../JetBrainsMono/ttf/JetBrainsMono-Regular.ttf') format('ttf');
|
||||||
|
font-weight: 400;
|
||||||
|
font-style: normal;
|
||||||
|
font-display: swap;
|
||||||
|
}
|
46
styles/reset.css
Normal file
46
styles/reset.css
Normal file
|
@ -0,0 +1,46 @@
|
||||||
|
/*
|
||||||
|
1. Use a more-intuitive box-sizing model.
|
||||||
|
*/
|
||||||
|
*, *::before, *::after {
|
||||||
|
box-sizing: border-box;
|
||||||
|
}
|
||||||
|
/*
|
||||||
|
2. Remove default margin
|
||||||
|
*/
|
||||||
|
* {
|
||||||
|
margin: 0;
|
||||||
|
}
|
||||||
|
/*
|
||||||
|
Typographic tweaks!
|
||||||
|
3. Add accessible line-height
|
||||||
|
4. Improve text rendering
|
||||||
|
*/
|
||||||
|
body {
|
||||||
|
line-height: 1.5;
|
||||||
|
-webkit-font-smoothing: antialiased;
|
||||||
|
}
|
||||||
|
/*
|
||||||
|
5. Improve media defaults
|
||||||
|
*/
|
||||||
|
img, picture, video, canvas, svg {
|
||||||
|
display: block;
|
||||||
|
max-width: 100%;
|
||||||
|
}
|
||||||
|
/*
|
||||||
|
6. Remove built-in form typography styles
|
||||||
|
*/
|
||||||
|
input, button, textarea, select {
|
||||||
|
font: inherit;
|
||||||
|
}
|
||||||
|
/*
|
||||||
|
7. Avoid text overflows
|
||||||
|
*/
|
||||||
|
p, h1, h2, h3, h4, h5, h6 {
|
||||||
|
overflow-wrap: break-word;
|
||||||
|
}
|
||||||
|
/*
|
||||||
|
8. Create a root stacking context
|
||||||
|
*/
|
||||||
|
#root, #__next {
|
||||||
|
isolation: isolate;
|
||||||
|
}
|
117
styles/style.css
Normal file
117
styles/style.css
Normal file
|
@ -0,0 +1,117 @@
|
||||||
|
:root {
|
||||||
|
--gray: #8a8a8a;
|
||||||
|
}
|
||||||
|
|
||||||
|
html {
|
||||||
|
font-family: "JetBrains Mono", Arial, sans-serif;
|
||||||
|
}
|
||||||
|
|
||||||
|
.a4 {
|
||||||
|
max-width: 595pt;
|
||||||
|
max-height: 842pt;
|
||||||
|
margin-left: auto;
|
||||||
|
margin-right: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
.icon {
|
||||||
|
--icon-dim: 1.5rem;
|
||||||
|
width: var(--icon-dim);
|
||||||
|
height: var(--icon-dim);
|
||||||
|
}
|
||||||
|
|
||||||
|
body {
|
||||||
|
display: grid;
|
||||||
|
|
||||||
|
grid-template-columns: 2fr 1fr;
|
||||||
|
grid-template-rows: auto auto;
|
||||||
|
column-gap: 2rem;
|
||||||
|
|
||||||
|
padding-top: 2rem;
|
||||||
|
@media print {
|
||||||
|
padding-top: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
header {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: row;
|
||||||
|
gap: 1rem;
|
||||||
|
justify-content: start;
|
||||||
|
align-items: center;
|
||||||
|
margin-bottom: 2rem;
|
||||||
|
|
||||||
|
grid-column-start: 1;
|
||||||
|
grid-row-start: 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
main {
|
||||||
|
grid-column-start: 1;
|
||||||
|
grid-row-start: 2;
|
||||||
|
}
|
||||||
|
|
||||||
|
menu {
|
||||||
|
grid-column-start: 2;
|
||||||
|
grid-row-start: 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
aside {
|
||||||
|
grid-column-start: 2;
|
||||||
|
grid-row-start: 2;
|
||||||
|
}
|
||||||
|
|
||||||
|
main > *:not(:last-child) {
|
||||||
|
margin-bottom: 1.5rem
|
||||||
|
}
|
||||||
|
|
||||||
|
.experience:not(:last-child) {
|
||||||
|
margin-bottom: 1rem
|
||||||
|
}
|
||||||
|
|
||||||
|
.pfp {
|
||||||
|
border-radius: 50%;
|
||||||
|
|
||||||
|
width: 5rem;
|
||||||
|
height: 5rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
menu.links {
|
||||||
|
list-style-type: none;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: row;
|
||||||
|
gap: 1rem;
|
||||||
|
padding: 0;
|
||||||
|
|
||||||
|
margin-bottom: 1rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.experience-time-span {
|
||||||
|
font-size: 0.85rem;
|
||||||
|
color: var(--gray);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
aside {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
gap: 1.5rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.skills-section:not(:last-child) {
|
||||||
|
margin-bottom: 0.5rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
dl.details {
|
||||||
|
display: grid;
|
||||||
|
grid-template-columns: auto auto;
|
||||||
|
|
||||||
|
justify-content: start;
|
||||||
|
column-gap: 1rem;
|
||||||
|
row-gap: 0.25rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@media print {
|
||||||
|
.experience {
|
||||||
|
page-break-inside: avoid;
|
||||||
|
}
|
||||||
|
}
|
Loading…
Add table
Add a link
Reference in a new issue