cv/cv2.typ
Joshua Coles 843f73cf32 Stash
2025-03-21 14:06:01 +00:00

147 lines
4.3 KiB
Plaintext

#import "@preview/fontawesome:0.5.0": *
#let accent = rgb("#367DA2")
#let bar_color = rgb("#1C2331")
#let bar_title_color = rgb("#1C2331")
#let sect_title_color = accent
#let entry_title_color = accent
#let icon(name, size, content) = {
box(
fill: accent,
inset: 4pt,
box(
width: size,
height: size,
text(white, size: size, align(center + horizon)[#fa-icon(name, solid: true)])
)
)
h(0.2cm)
box(
content,
baseline: -0.5em
)
}
#show(heading.where(level: 2)): it => {
box(
fill: sect_title_color,
inset: 3pt,
text(white, upper(it))
)
}
#let cvsect(title) = {
v(8pt)
box(
fill: sect_title_color,
inset: (x: 3pt, y: 2pt),
text(white, weight: "bold", upper(title))
)
v(5pt)
}
#let entry(date, title, subtitle, content) = {
grid(
columns: (17.5%, 1fr),
date,
{
text(weight: "bold", title)
h(1fr)
text(size: 0.9em, weight: "bold", subtitle)
linebreak()
content
}
)
v(12pt)
}
#set document(author: "Joshua Coles", title: "CV")
#set page(margin: (x: 2cm, y: 1.75cm), paper: "a4")
#set text(font: "Raleway", size: 9pt)
// Header
#grid(
columns: (45%, 27.5%, 27.5%),
{
stack(
box(fill: accent, inset: (x: 3pt, y: 3pt))[
#text(white, weight: "bold", size: 28pt, "JOSHUA")
],
v(1pt),
box(fill: accent, inset: (x: 3pt, y: 3pt))[
#text(white, weight: "bold", size: 28pt, "COLES")
],
v(1em),
text(size: 16pt)[Full-stack Developer]
)
},
{
stack(
spacing: 1pt,
icon("location-dot", 1em, "Bath / Reading"),
icon("phone", 1em, "+44 7564 199236"),
icon("at", 1em, link("mailto:me@joshuacoles.me")[me\@joshuacoles.me])
)
},
{
stack(
spacing: 1pt,
icon("earth", 1em, link("https://git.joshuacoles.me/explore/repos")[Personal Gitea]),
icon("github", 1em, link("https://github.com/joshuacoles")[github.com/joshuacoles]),
icon("linkedin", 1em, link("https://www.linkedin.com/in/joshua-coles-a79498151/")[LinkedIn])
)
}
)
== Who am I?
#grid(
columns: (70%, 27.5%),
{
[I am a passionate and adaptable software engineer with a strong focus on delivering high-quality, maintainable solutions. With experience across a range of technologies and industries, I thrive on understanding the business and organisational context behind software, ensuring that technical solutions align with real-world needs.
I believe that effective communication, problem-solving, and a willingness to continuously learn and adapt are key to delivery effective solutions.
Through my work at Better Conversations Foundation, I led the development of a real-time web application, collaborating closely with users to continuously evolve the product where I have developed a love and appreciation for correct solutions that respect their user and customers. I am excited about the opportunity to work with a collaborative, ambitious team like Ghyston's where I can contribute my experience while continuing to grow as an engineer.]
},
)
// Experience section
#cvsect("Experience")
#entry(
"Present",
"Lead Software Engineer",
"Better Conversations Foundation",
[
Returning to the foundation after my degree I have focused on:
- End-to-End Product Delivery: I lead the development of a real-time web application for delivering coaching session to large audiences
- Support the professional growth of junior developers through hands-on mentorship
- Spearheaded further AI work, including Model Context Protocol support
- Producing a course for a high profile business cohort in Oceana
#text(font: "Courier")[Ruby on Rails / Ruby / Turbo / Stimulus / iOS / Project Management / Mentorship]
]
)
// Continue with other entries...
// Education section would follow similar pattern
// Additional sections at bottom
#grid(
columns: (1fr, 1fr),
{
cvsect("ADDITIONAL QUALIFICATIONS AND TRAINING")
[#link("https://betterconversations.foundation/index.html")[Better Conversations] — 2022]
linebreak()
[ISO9001 and ISO27001 training — 2018]
},
{
cvsect("Interests")
[Long distance running; politics and governance and the applications of technology therein; previous committee member of Philosophy Society at University.]
}
)
// References section
#cvsect("References")
[Available upon request]