Skip to content

Commit

Permalink
Update resume to 1 pager
Browse files Browse the repository at this point in the history
  • Loading branch information
Jwiggiff committed Nov 2, 2023
1 parent a004716 commit 61f2756
Show file tree
Hide file tree
Showing 8 changed files with 81 additions and 168 deletions.
20 changes: 11 additions & 9 deletions src/SkillsList.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -12,10 +12,9 @@ import {
faNode,
faReact,
faSass,
faPython,
} from "@fortawesome/free-brands-svg-icons";
import {
faDatabase,
} from "@fortawesome/free-solid-svg-icons";
import { faDatabase } from "@fortawesome/free-solid-svg-icons";
import {
CIcon,
FirebaseIcon,
Expand Down Expand Up @@ -43,6 +42,7 @@ const skillIcons = {
Firebase: FirebaseIcon,
Linux: faLinux,
VSCode: VSCodeIcon,
Python: faPython,
};

export default function SkillsList() {
Expand All @@ -57,12 +57,14 @@ export default function SkillsList() {
return (
<div className="container">
<ul className="skills-list">
{skills.map((skill, i) => (
<li key={i} onMouseMove={onMouseMove}>
{<FontAwesomeIcon icon={skillIcons[skill]} />}
{skill}
</li>
))}
{Object.values(skills)
.flat()
.map((skill, i) => (
<li key={i} onMouseMove={onMouseMove}>
{<FontAwesomeIcon icon={skillIcons[skill]} />}
{skill}
</li>
))}
</ul>
</div>
);
Expand Down
8 changes: 4 additions & 4 deletions src/_data/education.yml
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
- name: 3rd year @ Queen's University (B.A.Sc. in Computer Engineering, Innovation Stream)
date: 2021 - Present
date: April 2025 (Expected)
location: Kingston, Ontario
gpa: 4.16/4.3 (Dean's Scholar)
awards:
- The Innovation stream allows me to combine engineering with courses in entrepreneurship and running my own business
- I also enjoy courses in Data Structures & Algorithms, Object-Oriented Programming, Digital Logic, and Operating Systems
- I have received Dean Scholars Distinction every semester and received the Ontario Professional Engineers Foundation Scholarship
- The Innovation stream allows me to combine engineering with courses in entrepreneurship and operating a business
- Courses in Data Structures & Algorithms, Object-Oriented Programming, Digital Logic, and Operating Systems
- Received Dean Scholars Distinction every semester and the Ontario Professional Engineers Foundation Scholarship
63 changes: 21 additions & 42 deletions src/_data/experience.yml
Original file line number Diff line number Diff line change
@@ -1,68 +1,47 @@
- organization: Nutripair
continued: true
icon: /assets/img/nutripair.png
url: https://www.nutripair.co/
title: Founding Full Stack Tech Lead
date: August 2023 - Present
location: California (Remote)
context: Nutripair is a ~10 person startup that helps people find the best foods for their dietary preferences at restaurants near them, while also helping local restaurants increase revenue and attract more diverse customers. I joined as an intern and have grown to become the Full Stack Tech Lead of the company, while continuing my full-time studies at Queen's University.
description:
- "**Worked with the CEO** and other upper management to discuss the company's needs concerning DevOps, including automation, documentation, and CI/CD and created a DevOps plan that I executed with my team of interns"
- "**Created a product roadmap** with the other tech leads and CEO to keep the team on track for launch, as well as long-term goals post-launch"
- Implemented a CI/CD pipeline using GitHub Actions to fully automate the testing and building process of the app, **decreasing build times from a day to under a minute**, allowing the team to focus their time more on development and pushing the company forward
- "**Guided my team of interns** focused on implementing automated tests for frontend and backend using Jest, ensuring reliability within the app"
- "**Documented the various processes and systems** in place throughout our tech stack, from development guidelines to testing and deployment, easing the onboarding process of new interns to ensure the company can withstand turnover"
- As a member of the upper management team, I work with the CEO and other tech leads to create a product that helps users find food to match their dietary needs while also helping restaurants increase their customer base
- Implemented a CI/CD pipeline using **GitHub Actions** to fully automate the testing and building process of the app, decreasing build times from a day to under a minute
- Guided a team of interns focused on writing tests across the stack using **Jest**
- Documented the various processes and systems in place throughout our tech stack using **Notion**, increasing the onboarding speed of new engineers by over 50%

- title: Software Engineering Intern (Full Stack)
continued: true
date: April 2023 - August 2023
location: California (Remote)
description:
- Implemented and tested user authentication using Amazing Cognito to authenticate with the rest of the AWS suite, **increasing security within the app**, which allowed the company to apply for several partnerships that needed specific security standards
- Improved security measures by **implementing multi-factor authentication and federated sign-in** with Google, Apple, and Facebook, increasing the credibility and ease-of-access of the application for end users
- Worked with backend engineers to implement a caching layer to **reduce loading times by 25%**, increasing customer satisfaction by over 65%

- title: Software Engineering Intern (Frontend)
date: January 2023 - April 2023
- organization: Nutripair
icon: /assets/img/nutripair.png
url: https://www.nutripair.co/
title: Software Engineering Intern (Full Stack)
date: January 2023 - August 2023
location: California (Remote)
description:
- "**Worked with tech leads** to create an app using **TypeScript + React Native** to help users find food at nearby restaurants that match their dietary needs"
- Followed an agile framework to keep the team on track
- Created initial designs and functionality for the main pages of the app including the restaurant homepage, menu item page, and filters
- "**Worked directly with tester feedback** to iterate and improve the functionality and look of the application"
- Designed several main pages including the welcome screen and user authentication flow which **increased user retention by over 10%**
- Implemented user authentication using **Amazon Cognito** to authenticate with the rest of the **AWS** suite, increasing security within the app
- Worked with backend engineers to implement a **CloudFront** caching layer to reduce loading times by 25%, increasing customer satisfaction by over 65%
- Worked with tech leads in an agile team to develop an app using **TypeScript + React Native** to help users find food at nearby restaurants that match their dietary needs
- Worked closely with beta testers to iterate and implement feedback, increasing user retention by 10%

- organization: Ollon
icon: /assets/img/ollon.png
url: https://www.ollon.ca/
title: Software Engineer Intern
date: June 2023 - August 2023
location: Toronto, Ontario (Remote)
context: Ollon is a software consulting company that creates unique and highly custom solutions for companies from e-commerce, mobile and web apps, to the Internet of Things and AI.
description:
- "**Worked with the CEO to develop a plan** to redevelop a machine learning model in Python into more reusable code"
- Independently implemented the plan which resulted in **increasing the accuracy of the results by over 20% and decreasing the time elapsed by over 50%**
- Implemented an email status feature to increase transparency from the end user who is triggering the email to the backend system which sends the email, **decreasing the volume of error reporting and relieving unnecessary communications with the client**
- "**Conducted code analysis and cleanup** while also fixing bugs and implementing new features in a computer vision mobile app which made up for months of missed work, catching the project up to the projected timeline and making it ready for launch"
- "**Worked directly with clients** to understand the product and suggest viable solutions to their issues and implemented these solutions for feedback rounds with the client"
- Multi-tasked between several software projects to deliver high quality products to clients in a timely manner
- Worked with the CEO to develop a plan to redevelop a machine learning model in **Python** into more reusable code, and followed through, increasing accuracy by over 20% and decreasing runtime by over 50%
- Implemented an email status feature to connect the **React** frontend to the **Node.JS** backend, decreasing the volume of error reporting by over 75%
- Worked directly with clients to understand the product and suggest viable solutions to their issues and implemented these solutions for feedback rounds with the client

- organization: Engineering Society of Queen's University
icon: /assets/img/engsoc.png
continued: true
url: https://www.engsoc.queensu.ca/
title: Director of Information Technology
date: May 2023 - Present
location: Kingston, Ontario
context: The Engineering Society employs over 150 students and over 300 volunteers. It operates several businesses on campus as well as a wealth of clubs, conferences, design teams and events.
description:
- Reduced disk usage of our main servers by over 25%, **avoiding a potential cost of over $1000** to upgrade the server
- Resolved over 50 security issues across over 20 websites, **increasing the security and credibility of the organization** as a whole
- Implemented 100+ recurring cron jobs to backup sites, check security vulnerabilities, and update outdated software to help **maintain server upkeep and security automatically**

- title: Software Development Team Manager
date: September 2022 - April 2023
location: Kingston, Ontario
description:
- "**Managed 3 project teams**, working on a Chrome extension for students, a video game that takes place on a university campus, and a computer vision weightlifting coach, **totalling 15 engineers**"
- Led brainstorming sessions to **define project expectations, goals, and desired final product**
- Implemented a clear **project management and tracking structure using Notion and Slack** to ensure each team member contributed to the project and that their learning was supported by others
- Managed IT resources for 7 businesses and 40+ teams overseen by the student society
- Reduced disk usage of our **Linux** main servers by over 25%, avoiding a potential cost of over $1000
- Helped resolve key security vulnerabilities across our society websites, increasing security and preventing potential data breaches
- Implemented 100+ recurring cron jobs to backup sites, check security vulnerabilities, and update outdated software to help maintain server upkeep and security automatically
4 changes: 2 additions & 2 deletions src/_data/projects.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
description: >
An AI-powered encyclopedia.
resume_description: >
An AI-powered online encyclopedia. Built using Next.JS, this project uses OpenAI's GPT-3 to generate a page for any topic you put in. Each page also displays links to related articles, which of course are also generated by GPT-3.
An AI-powered encyclopedia I built using **Next.JS**. It uses **Typescript + React** on the frontend and **Node.JS** in the backend to connect with the **OpenAI API**.
url: https://github.com/Jwiggiff/infinipedia
image: "/assets/img/infinipedia.png"

Expand All @@ -15,7 +15,7 @@
description: >
A playlist generator using AI.
resume_description: >
A playlist generator powered by OpenAI's GPT-3. This frontend was built using React and Vite SSG, while the backend was made using NodeJS and Express. This project interacts with OpenAI's API to generate a playlist based on the inputted songs and uses Spotify's API for music searching and retrieving song information.
A playlist generator powered by **GPT-3** I built with a couple friends. I worked on the frontend using **Vite + React** and **Node.JS + Express** for the backend. It interacts with **OpenAI's API** to generate a playlist based on the inputted songs and uses **Spotify's API** for music searching and retrieving song information.
url: https://github.com/ethanwhitcher/playlist.ai
image: "/assets/img/playlistai.png"

Expand Down
23 changes: 1 addition & 22 deletions src/_data/resume.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,25 +3,4 @@ email: friedman.josh03@gmail.com
phone: (416) 843-6670
location: Toronto, Ontario
github: github.com/jwiggiff
linkedin: linkedin.com/in/joshwfriedman

intro: I am currently looking for a 12-month full-time internship position starting in September 2024 as part of my school's internship program, after which I will return to school for my last year of studies. I am someone who loves to learn, and I would like a position that supports that goal, and where I can also contribute my existing skills and knowledge to the team. I always prioritize staying at the forefront of new technologies, adapting my process to be more efficient by using tools such as GitHub Copilot and ChatGPT for debugging. I am particularly passionate about projects that bridge the gap between hardware and software, such as robotics or programming physical systems!

experience_tagline: >
I am currently pursuing my degree at Queen's University full-time while simultaneously working part-time as a Tech Lead at Nutripair and as Director of IT for the Engineering Society.
skills: >
I have over **7 years** of **JavaScript** experience, originally self-taught, using **NodeJS** for backends and **ReactJS + TypeScript** for frontends. I have over **5 years** of **HTML/CSS** experience, also self-taught. I have about **3 years** of mobile development experience using technologies like **Flutter and React Native**. I have used **Java and C** over the past **3 years** in coursework. I have **3 years** of experience working with several backend technologies including **Firebase, MongoDB, PostgreSQL and AWS**. I am currently learning **Python and MatLab.** Despite my range of skills, I know these are just the beginning, and I am always looking to learn more!
other_interests: >
There's more to me besides engineering! I have a passion for music, playing guitar and saxophone, as well as listening to R&B, Rock and Roll, Jazz and Pop music. I also ran a charity concert called Covid Creations that raised over $14,000 for Sunnybrook Hospital's Covid Research Fund! Besides music, I enjoy playing hockey and have earned my 3rd degree black belt in Karate.
testimonials:
- author: Catlin Tran, Founder & CEO at Nutripair
quote: Josh is an integral part of Nutripair's team and consistently delivers exceptional contributions while always being someone you can count on to get the job done.
# - author: Shohei Yamashita, Front End Lead at Nutripair
# quote: I worked closely with Josh and can confidently vouch for his outstanding qualities. While at Nutripair, he grew from being just a front-end developer into a full-stack lead. Josh has a knack for quickly picking up new technologies, paying attention to detail while maintaining a high-level perspective. He is an excellent teacher and always ready to assist others. Most importantly, Josh is a reliable achiever, consistently delivering results and making them an essential part of any team or project.
- author: Shohei Yamashita, Front End Lead at Nutripair
quote: I worked closely with Josh and can confidently vouch for his exceptional qualities. He seamlessly evolved from a front-end developer to a full-stack lead, excelling in learning new technologies, attention to detail, and consistent, reliable results—a valuable asset to any team or project.
- author: Chris Elcombe, Senior Developer at Ollon
quote: Josh was able to quickly ramp up and start working on different projects in different languages. He worked well in a team, promptly bringing up blockers and issues he encountered making turnaround time on tasks short and productive.
linkedin: linkedin.com/in/joshwfriedman
40 changes: 22 additions & 18 deletions src/_data/skills.yml
Original file line number Diff line number Diff line change
@@ -1,18 +1,22 @@
- JavaScript
- TypeScript
- HTML
- CSS
- SCSS
- SQL
- C
- Java
- Assembly
- NodeJS
- React
- React Native
- Flutter
- Git
- AWS
- Firebase
- Linux
- VSCode
Languages:
- JavaScript
- TypeScript
- HTML
- CSS
- SCSS
- SQL
- C
- Java
- Assembly
- Python
Frameworks:
- NodeJS
- React
- React Native
- Flutter
Tools:
- Git
- AWS
- Firebase
- Linux
- VSCode
39 changes: 14 additions & 25 deletions src/resume.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -56,9 +56,6 @@ function Resume() {
</div>
<div className="clear"></div>
</header>
<section id="intro">
<p>{config.intro}</p>
</section>
<section id="education">
<h2>Education</h2>
{education.map((school, index) => (
Expand All @@ -83,11 +80,21 @@ function Resume() {
</section>
<section id="skills">
<h2>Technical Skills</h2>
<ReactMarkdown>{config.skills}</ReactMarkdown>
<div className="skills">
{Object.entries(skills).map(([cat, list]) => (
<p>
<b>{cat}: </b>
<span>| </span>
{list.map((skill) => (
<span>{skill} | </span>
))}
</p>
))}
</div>
</section>
<section id="experience">
<h2>Experience</h2>
<p class="subtext">
<p className="subtext">
{config.experience_tagline}
My full work experience can be seen at{" "}
<a href="https://linkedin.com/in/joshwfriedman">
Expand Down Expand Up @@ -137,7 +144,7 @@ function Resume() {
</section>
<section id="projects">
<h2>Projects</h2>
<p class="subtext">
<p className="subtext">
Check out more projects at{" "}
<a href="https://joshfriedman.dev">joshfriedman.dev</a>. All source
code is available at{" "}
Expand All @@ -152,29 +159,11 @@ function Resume() {
<a target="_blank" href={project.url}>
<FontAwesomeIcon icon={faGithub} />
</a>
<p>{project.resume_description}</p>
<ReactMarkdown>{project.resume_description}</ReactMarkdown>
</li>
))}
</ul>
</section>
<section id="interest">
<h2>Other Interests</h2>
<p>{config.other_interests}</p>
</section>
<section id="testimonials">
<h2>Testimonials</h2>
<div className="testimonials">
{config.testimonials.map((testimonial, index) => (
<div key={index} className="testimonial">
<p className="quote">
<FontAwesomeIcon icon={faQuoteLeft} />
{testimonial.quote}
</p>
<p className="author">- {testimonial.author}</p>
</div>
))}
</div>
</section>
</>
);
}
Expand Down
52 changes: 6 additions & 46 deletions src/sass/resume.scss
Original file line number Diff line number Diff line change
Expand Up @@ -107,18 +107,6 @@ p.subtext {
margin: 0;
}

#intro p {
text-align: center;
font-style: italic;

&::before {
content: "";
}
&::after {
content: "";
}
}

.experience {
margin-top: 0.5rem;
border-bottom: 1px solid black;
Expand Down Expand Up @@ -158,7 +146,7 @@ p.subtext {
}

.secondRow {
font-size: 0.75em;
font-size: 0.9em;
font-style: italic;

.title {
Expand Down Expand Up @@ -217,6 +205,10 @@ p.subtext {

#skills {
break-inside: avoid;

.skills {
margin: 0.25rem 0.5rem;
}
}

.projects {
Expand All @@ -237,36 +229,4 @@ p.subtext {
border-bottom: 1px solid;
}
}
}

#testimonials {
break-inside: avoid;

.testimonials {
padding: 1rem;
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 2rem;

.quote {
font-size: 1.1em;
font-style: italic;
margin-bottom: 1em;
position: relative;

svg {
position: absolute;
top: -1em;
left: -1em;
width: 3em;
height: 3em;
opacity: 0.1;
}
}

.author {
font-size: 0.9em;
text-align: right;
}
}
}
}

0 comments on commit 61f2756

Please sign in to comment.