diff --git a/.gitignore b/.gitignore index a57ebd7..b8e17eb 100644 --- a/.gitignore +++ b/.gitignore @@ -22,3 +22,4 @@ .idea/ __pycache__/ test.py +.~lock.* diff --git a/cv.adoc b/cv.adoc index 718978d..0a6a472 100644 --- a/cv.adoc +++ b/cv.adoc @@ -1,4 +1,4 @@ -= Curriculum Vitae += Brent Saner ifeval::["{filetype}" == "pdf"] Brent Saner | +1 (504) 338-1513 | Lehigh Valley area, PA endif::[] @@ -16,16 +16,15 @@ ifeval::["{doctype}" != "article"] endif::[] :idprefix: :toclevels: 7 +:forceinclude: :source-highlighter: highlightjs -include::includes/intro.adoc[] -(If you are looking for my résumé instead, which is much more succinct, that can be found <>.) +include::includes/ext.intro.adoc[] +(This is my curriculum vitae. If you are looking for my résumé instead, which is much more succinct, that can be found <>.) include::includes/values.adoc[] -include::includes/accomplish.adoc[] - include::includes/skills.adoc[] include::includes/exp.adoc[] diff --git a/example/Sheets_Giggles_Resume_Template.xml b/example/Sheets_Giggles_Resume_Template.xml new file mode 100644 index 0000000..6d8c10d --- /dev/null +++ b/example/Sheets_Giggles_Resume_Template.xml @@ -0,0 +1,99 @@ + + +
+ Jobby McJobface + pillowtalk@sheetsgiggles.com  (555) 555-5555  Denver, CO + + WORK EXPERIENCE + + Sheets & Giggles                                                                                           Oct. 2017 – Present + Founder & CEO                                                                                                  Denver, CO + + + S&G is a pun-based, sustainable bedding empire making cooling eucalyptus lyocell sheets (SheetsGiggles.com). + + + As Founder & CEO, I oversee our core strategies, product roadmap, ops, marketing, and fundraising. + + + Core responsibility #3. Pretend this is where they stop reading your resume. Whether Work or Education is your top section, the first 3 things they see better be your most impressive stuff, period. + + + Core responsibility #4. Bullets #1 and #2 are for high-level descriptions of the company and/or your role. + + +   + Company Name                                                                          Month Year – Month Year + Job Title                                                                                                                         City, ST + + + Core responsibility #1. + + + Core responsibility #2. + + + Core responsibility #3. + + + + Company Name                                                                          Month Year – Month Year + Job Title                                                                                                                          City, ST + + + Core responsibility #1. + + + Core responsibility #2. + + + + Company Name                                                                               Month Year – Month Year + Job Title                                                                                                                             City, ST + + + Core responsibility #1. + + + + Company Name                                                                          Month Year – Month Year + Job Title                                                                                                                           City, ST + + + Core responsibility #1. + + + + EDUCATION +         + University Name                                                                                                 Graduation Month, Year + Degree (e.g., BS), Majors (e.g., Computer Science)                                                                             City, ST + + + List your honors like summa cum laude or Economics Honors Society; 3.X/4.0 GPA (list only if GPA is over 3.3) + + + + + Studied abroad in City, Country during spring/fall 20YY semester (University Name) + + + Any other fun stuff like varsity sports, fraternity/sorority, or something that gives you a little color + + + + SKILLS & INTERESTS + + + + Skills (plug in your own): Strategic planning; strategic partnerships; revenue modeling & forecasting; retail partnerships, sales, & distro; contract negotiations; account management; Amazon marketing; channel marketing; crowdfunding; copywriting; content marketing; brand marketing; DTC; Shopify; supply chain management; Keynote / PPT presentation + + + Interests (make your own): Puns; sleeping; sustainability; politics; yoga; traveling; fishing; Reddit; beer; Seinfeld + + + Made for you with love by Sheets & Giggles™ (/u/SheetsGiggles). There’s more detailed resume advice on our bedding blog at http://bit.ly/SheetsGigglesResume + If you’re feeling grateful and need new sheets, try some of our sustainable, cooling, softer-than-cotton eucalyptus lyocell bed sheets at SheetsGiggles.com. + You can also follow @SheetsGiggles on Insta, FB, and Twitter for more useful posts like this and occasionally decent content. + Just delete this footer, plug in your info, and go get your dream job. If you share this resume template, please give S&G credit by linking to SheetsGiggles.com. +
diff --git a/example/resume-theme.yml b/example/resume-theme.yml new file mode 100644 index 0000000..162a50e --- /dev/null +++ b/example/resume-theme.yml @@ -0,0 +1,315 @@ +font: + catalog: + # Noto Serif supports Latin, Latin-1 Supplement, Latin Extended-A, Greek, Cyrillic, Vietnamese & an assortment of symbols + Noto Serif: + normal: notoserif-regular-subset.ttf + bold: notoserif-bold-subset.ttf + italic: notoserif-italic-subset.ttf + bold_italic: notoserif-bold_italic-subset.ttf + # M+ 1mn supports ASCII and the circled numbers used for conums + M+ 1mn: + normal: mplus1mn-regular-ascii-conums.ttf + bold: mplus1mn-bold-ascii.ttf + italic: mplus1mn-italic-ascii.ttf + bold_italic: mplus1mn-bold_italic-ascii.ttf + # M+ 1p supports Latin, Latin-1 Supplement, Latin Extended, Greek, Cyrillic, Vietnamese, Japanese & an assortment of symbols + # It also provides arrows for ->, <-, => and <= replacements in case these glyphs are missing from font + M+ 1p Fallback: + normal: mplus1p-regular-fallback.ttf + bold: mplus1p-regular-fallback.ttf + italic: mplus1p-regular-fallback.ttf + bold_italic: mplus1p-regular-fallback.ttf + fallbacks: + - M+ 1p Fallback +page: + background_color: ffffff + layout: portrait + margin: [0.5in, 0.5in, 0.5in, 0.5in] + # margin_inner and margin_outer keys are used for recto/verso print margins when media=prepress + margin_inner: 0.75in + margin_outer: 0.59in + size: A4 +base: + align: justify + # color as hex string (leading # is optional) + font_color: 333333 + # color as RGB array + #font_color: [51, 51, 51] + # color as CMYK array (approximated) + #font_color: [0, 0, 0, 0.92] + #font_color: [0, 0, 0, 92%] + font_family: Noto Serif + # choose one of these font_size/line_height_length combinations + #font_size: 14 + #line_height_length: 20 + #font_size: 11.25 + #line_height_length: 18 + #font_size: 11.2 + #line_height_length: 16 + font_size: 10 + #line_height_length: 15 + # correct line height for Noto Serif metrics + line_height_length: 11 + #font_size: 11.25 + #line_height_length: 18 + line_height: $base_line_height_length / $base_font_size + font_size_large: round($base_font_size * 1.25) + font_size_small: round($base_font_size * 0.85) + font_size_min: $base_font_size * 0.75 + font_style: normal + border_color: eeeeee + border_radius: 4 + border_width: 0.5 +# FIXME vertical_rhythm is weird; we should think in terms of ems +#vertical_rhythm: $base_line_height_length * 2 / 3 +# correct line height for Noto Serif metrics (comes with built-in line height) +vertical_rhythm: $base_line_height_length +horizontal_rhythm: $base_line_height_length +# QUESTION should vertical_spacing be block_spacing instead? +vertical_spacing: $vertical_rhythm +link: + font_color: 428bca +# literal is currently used for inline monospaced in prose and table cells +literal: + font_color: b12146 + font_family: M+ 1mn +menu_caret_content: " \u203a " +heading: + align: left + #font_color: 181818 + font_color: $base_font_color + font_family: $base_font_family + font_style: bold + # h1 is used for part titles (book doctype only) + h1_font_size: floor($base_font_size * 2.6) + # h2 is used for chapter titles (book doctype only) + h2_font_size: floor($base_font_size * 2.15) + h3_font_size: round($base_font_size * 1.7) + h4_font_size: $base_font_size_large + h5_font_size: $base_font_size + h6_font_size: $base_font_size_small + #line_height: 1.4 + # correct line height for Noto Serif metrics (comes with built-in line height) + line_height: 1 + margin_top: $vertical_rhythm * 0.4 + margin_bottom: $vertical_rhythm * 0.9 + h3_align: center + h4_align: center +title_page: + align: right + logo: + top: 2% + title: + top: 55% + font_size: $heading_h1_font_size + font_color: DCDCDC + line_height: 0.9 + subtitle: + font_size: $heading_h3_font_size + font_style: bold_italic + line_height: 1 + authors: + margin_top: $base_font_size * 1.25 + font_size: $base_font_size_large + font_color: 181818 + revision: + margin_top: $base_font_size * 1.25 + font_color: DCDCDC +block: + margin_top: 0 + margin_bottom: $vertical_rhythm +caption: + align: left + font_size: $base_font_size * 0.95 + font_style: italic + # FIXME perhaps set line_height instead of / in addition to margins? + margin_inside: $vertical_rhythm / 3 + #margin_inside: $vertical_rhythm / 4 + margin_outside: 0 +lead: + font_size: $base_font_size_large + line_height: 1.4 +abstract: + font_color: 5c6266 + font_size: $lead_font_size + line_height: $lead_line_height + font_style: italic + first_line_font_style: bold + title: + align: center + font_color: $heading_font_color + font_family: $heading_font_family + font_size: $heading_h4_font_size + font_style: $heading_font_style +admonition: + column_rule_color: $base_border_color + column_rule_width: $base_border_width + padding: [0, $horizontal_rhythm, 0, $horizontal_rhythm] + #icon: + # tip: + # name: fa-lightbulb-o + # stroke_color: 111111 + # size: 24 + label: + text_transform: uppercase + font_style: bold +blockquote: + font_color: $base_font_color + font_size: $base_font_size_large + border_color: $base_border_color + border_width: 5 + # FIXME disable negative padding bottom once margin collapsing is implemented + padding: [0, $horizontal_rhythm, $block_margin_bottom * -0.75, $horizontal_rhythm + $blockquote_border_width / 2] + cite_font_size: $base_font_size_small + cite_font_color: 999999 +# code is used for source blocks (perhaps change to source or listing?) +code: + font_color: $base_font_color + font_family: $literal_font_family + font_size: ceil($base_font_size) + padding: $code_font_size + line_height: 1.25 + # line_gap is an experimental property to control how a background color is applied to an inline block element + line_gap: 3.8 + background_color: f5f5f5 + border_color: cccccc + border_radius: $base_border_radius + border_width: 0.75 +conum: + font_family: M+ 1mn + font_color: $literal_font_color + font_size: $base_font_size + line_height: 4 / 3 +example: + border_color: $base_border_color + border_radius: $base_border_radius + border_width: 0.75 + background_color: ffffff + # FIXME reenable padding bottom once margin collapsing is implemented + padding: [$vertical_rhythm, $horizontal_rhythm, 0, $horizontal_rhythm] +image: + align: left +prose: + margin_top: $block_margin_top + margin_bottom: $block_margin_bottom +sidebar: + background_color: eeeeee + border_color: e1e1e1 + border_radius: $base_border_radius + border_width: $base_border_width + # FIXME reenable padding bottom once margin collapsing is implemented + padding: [$vertical_rhythm, $vertical_rhythm * 1.25, 0, $vertical_rhythm * 1.25] + title: + align: center + font_color: $heading_font_color + font_family: $heading_font_family + font_size: $heading_h4_font_size + font_style: $heading_font_style +thematic_break: + border_color: $base_border_color + border_style: solid + border_width: $base_border_width + margin_top: $vertical_rhythm * 0.5 + margin_bottom: $vertical_rhythm * 1.5 +description_list: + term_font_style: bold + term_spacing: $vertical_rhythm / 4 + description_indent: $horizontal_rhythm * 1.25 +outline_list: + indent: $horizontal_rhythm * 1.5 + #marker_font_color: 404040 + # NOTE outline_list_item_spacing applies to list items that do not have complex content + item_spacing: $vertical_rhythm / 2 +table: + background_color: $page_background_color + #head_background_color: 838383 + #head_font_color: $base_font_color + head_font_style: bold + #body_background_color: + body_stripe_background_color: f9f9f9 + foot_background_color: f0f0f0 + border_color: dddddd + border_width: $base_border_width + cell_padding: 3 +toc: + indent: $horizontal_rhythm + line_height: 1.4 + dot_leader: + #content: ". " + font_color: a9a9a9 + #levels: 2 3 +# NOTE in addition to footer, header is also supported +#header: +# font_size: $base_font_size_small + # NOTE if background_color is set, background and border will span width of page +# border_color: dddddd +# border_width: 0.25 +# height: $base_line_height_length * 2.5 +# line_height: 1 +# padding: [$base_line_height_length / 2, 1, 0, 1] +# vertical_align: top +# #image_vertical_align: or +# # additional attributes for content: + # * {page-count} + # * {page-number} + # * {document-title} + # * {document-subtitle} + # * {chapter-title} + # * {section-title} + # * {section-or-chapter-title} +# recto: +# #columns: "<50% =0% >50%" +# right: +# #content: '{page-number}' +# content: '{section-or-chapter-title}' +# #content: '{document-title} | {page-number}' +# left: +# content: '{document-title}' +# #center: +# # content: '{page-number}' +# verso: +# #columns: $footer_recto_columns +# right: +# content: '{section-or-chapter-title}' +# #content: '{chapter-title} | {page-number}' +# left: +# content: '{document-title}' +# #center: +# # content: '{page-number}' +footer: + font_size: $base_font_size_small + # NOTE if background_color is set, background and border will span width of page + border_color: dddddd + border_width: 0.25 + height: $base_line_height_length * 2.5 + line_height: 1 + padding: [$base_line_height_length / 2, 1, 0, 1] + vertical_align: top + #image_vertical_align: or + # additional attributes for content: + # * {page-count} + # * {page-number} + # * {document-title} + # * {document-subtitle} + # * {chapter-title} + # * {section-title} + # * {section-or-chapter-title} + recto: + #columns: "<50% =0% >50%" + right: + content: '{page-number}' + #content: '{section-or-chapter-title} | {page-number}' + #content: '{document-title} | {page-number}' + left: + content: 'Fname M. Lname' + #center: + # content: '{page-number}' + verso: + #columns: $footer_recto_columns + right: + content: $footer_recto_right_content + #content: '{chapter-title} | {page-number}' + left: + content: 'Fname M. Lname' + #center: + # content: '{page-number}' diff --git a/example/resume.adoc b/example/resume.adoc new file mode 100644 index 0000000..f78c9d2 --- /dev/null +++ b/example/resume.adoc @@ -0,0 +1,100 @@ +:doctype: article +:pdf-stylesdir: +:pdf-style: resume + +==== Fname M. Lname + +[.text-center] +*Email:* mailto:somemail@isp.com[somemail@isp.com] | *LinkedIn:* https://www.linkedin.com[LinkedInProfileName] | *Phone:* (000)000-000 + + +===== TITLE & HEADLINE + +Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Donec quam felis, ultricies nec, pellentesque eu, pretium quis, sem. Nulla consequat massa quis enim. Donec pede justo, fringilla vel, aliquet nec, vulputate eget, arcu. In enim justo, rhoncus ut, imperdiet a, venenatis vitae, justo. Nullam dictum felis eu pede mollis pretium. Integer tincidunt. Cras dapibus. Vivamus elementum: + +* Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo +* Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo +* Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo +* Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo +* Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo + +===== PROFESSIONAL EXPERIENCE + +**** +**Current Job Title** + +https://www.google.com[__Current Company__] + +__2019 - Present__ + +Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Donec quam felis, ultricies nec, pellentesque eu, pretium quis, sem. Nulla consequat massa quis enim. Donec pede justo, fringilla vel, aliquet nec, vulputate: + +* Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur +* Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur +* Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur +* Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur +* Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur +**** + +**Previous Job Title** + +https://www.google.com[__Previous Company__] + +__2011 - 2019__ + +Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Donec quam felis, ultricies nec, pellentesque eu, pretium quis, sem. Nulla consequat massa quis enim. Donec pede justo, fringilla vel, aliquet nec, vulputate: + +* Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur +* Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur +* Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur +* Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur +* Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur + +**** +**Previous Job Title 2** + +https://www.google.com[__Previous Company 2__] + +__2007 - 2011__ + +Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Donec quam felis, ultricies nec, pellentesque eu, pretium quis, sem. Nulla consequat massa quis enim. Donec pede justo, fringilla vel, aliquet nec, vulputate: + +* Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur +* Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur +* Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur +* Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur +* Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur +**** + +**Previous Job Title 3** + +https://www.google.com[__Previous Company 3__] + +__2000 - 2007__ + +Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Donec quam felis, ultricies nec, pellentesque eu, pretium quis, sem. Nulla consequat massa quis enim. Donec pede justo, fringilla vel, aliquet nec, vulputate: + +* Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur +* Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur +* Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur +* Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur +* Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur + +===== SOFTWARE SKILLS + +Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget: + +* **Skill Category One** - Specific Program A1, Specific Program B1, Specific Program C1, Specific Program D1, +* **Skill Category Two** - Specific Program A2, Specific Program B2, Specific Program C2, Specific Program D2, +* **Skill Category Three** - Specific Program A3, Specific Program B3, Specific Program C3, Specific Program D3, + +===== EDUCATION + +**Most Recent Certification/Degree** + +School/University Name – City, St + +**Previous Certification/Degree** + +School/University Name – City, St + +**Previous Certification/Degree 2** + +School/University Name – City, St + +===== SAMPLES + +Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget: + +* https://www.google.com[Document Sample 1] +* https://www.google.com[Document Sample 2] +* https://www.google.com[Document Sample 3] +* https://www.google.com[Document Sample 4] diff --git a/example/systems-administrator-experienced.odt b/example/systems-administrator-experienced.odt new file mode 100644 index 0000000..5aed5a2 Binary files /dev/null and b/example/systems-administrator-experienced.odt differ diff --git a/includes/accomplish.adoc b/includes/accomplish.adoc deleted file mode 100644 index 025c59e..0000000 --- a/includes/accomplish.adoc +++ /dev/null @@ -1,11 +0,0 @@ -== Professional Accomplishments - -I have some milestones I'm particularly proud of. - -For clients and companies past and present, I have... - -* Consolidated server count from 1500+ to ~750 in underutilized clusters -* Reduced infrastructure costs by ~75% -* Redesigned several platforms for GDPR compliance -* Designed a SSO (Single Sign-On) backend/architecture for customers -* Re-architectured an authentication scheme for a global service to use central authentication (with bandwidth accounting) diff --git a/includes/exp2.adoc b/includes/exp2.adoc index 336b341..8f203e4 100644 --- a/includes/exp2.adoc +++ b/includes/exp2.adoc @@ -1,12 +1,26 @@ -== Professional Experience Highlights +== Recent Professional Experience Highlights/Accomplishments -* Systems Administrator, then Systems Engineer, for https://getfoxyproxy.org/[Foxyproxy^] as a consultant/independent -contractor since March 2014 -* NOC engineer for a community/volunteer-driven city-wide WiFi project, Project.Phree for 1 year (now -defunct) -* Support Representative, Support Supervisor, then Systems Administrator with -https://asmallorange.com/[A Small Orange^] for 2.5 years -* Hardware diagnostician for -https://www.linkedin.com/company/barrister-global-services-network/[Barrister Global Services Network^] for 1 year -* Linux Systems Administrator for http://www.tektonic.net/[Tektonic^] for 1.5 years +* _Systems Administrator_, then _Systems Engineer_, for *https://getfoxyproxy.org/[Foxyproxy^]* as a consultant/independent +contractor *since March 2014* +** *Consolidated* customer-facing server count *from 1500+ to ~750* in underutilized clusters +** *Reduced* infrastructure *costs by ~75%* +** *Redesigned* several platforms *for GDPR compliance* +** *Designed* a SSO (Single Sign-On) *backend/architecture* for customers +** *Re-architectured* an authentication scheme for a global service to use *centralized authentication* with *bandwidth accounting* +* _NOC engineer_ for a community/volunteer-driven city-wide WiFi project, *Project.Phree* for *1 year* (now defunct) +** *Designed* custom WAP firmware for *mesh networking* +** *Deployed* supporting *infrastructure* +** *Incorporated* other *volunteers* +* *Systems Administrator* for *https://asmallorange.com/[A Small Orange^]* for *2.5 years* +** *Maintained/managed* shared and managed-dedicated hosting servers (*400+ servers*) +** *Redesigned* PXE system for installs/deployments +//// +* _Hardware diagnostician_ for *https://www.linkedin.com/company/barrister-global-services-network/[Barrister Global Services Network^]* for *1 year* +** Remotely *triaged* user/consumer *hardware issues* +** Remotely *triaged* enterprice/corporate *office printer* issues +* _Linux Systems Administrator_ for *http://www.tektonic.net/[Tektonic^]* for *1.5 years* +** *Managed* OpenVZ/Virtuozzo containers (*~300 instances*) and supporting infrastructure +** Provided *support to clients* * Support Technician and NOC Admin for https://www.acetechgroup.com/[ACE Technology Group^] for 1.5 years +** Remotely *managed* point-of-presence *VPN bridges* and *client machines* +//// diff --git a/includes/ext.intro.adoc b/includes/ext.intro.adoc new file mode 100644 index 0000000..fea243d --- /dev/null +++ b/includes/ext.intro.adoc @@ -0,0 +1,24 @@ +== Introduction + +Hello! My name is Brent Saner, and I have a passion for technology. +I don't mean I enjoy playing with the latest gadgets, I mean a *passion*. + +I read RFCs and man pages for fun (so much so that +https://git.square-r00t.net/OpTools/tree/ref/rfc.py[I wrote an RFC client^]. +I have a https://git.square-r00t.net/[large amount of projects^] I work on in my free time. I have a VM lab and +my home network is segmented into five different VLANs, on-site and remote backups, PXE-bootstrapped +https://ipxe.org/[iPXE^], with 10Gbps house backbone using 802.1X backed by RADIUS and LDAP, all with a +full x86_64 Linux 1U as my border device. For a home network. + +With this, combined with my *18 years* of professional Linux/UNIX experience (*21 years* hobbyist), I've learned a few +tricks around the ol' rodeo. Because of my adherence to and knowledge of best practices, care for forward-thinking, and +sheer joy I take in solving potentially difficult problems, it is my goal (and particular knack) to get your company's +infrastructure and services smooth and stable while retaining flexibility for vast growth. + +I have directly applicable experience with, and seek out opportunities in, systems operations in the following roles: + +* Linux Systems Engineer +* Linux Systems Administrator +* Infrastructure Architect + + diff --git a/includes/intro.adoc b/includes/intro.adoc index 17332c9..f2ca5bc 100644 --- a/includes/intro.adoc +++ b/includes/intro.adoc @@ -1,20 +1,15 @@ == Introduction -Hello! My name is Brent Saner, and I have a passion for technology. -I don't mean I enjoy playing with the latest gadgets, I mean a *passion*. -I read RFCs and man pages for fun (so much so that -https://git.square-r00t.net/OpTools/tree/ref/rfc.py[I wrote an RFC client^] - before I found out that the IETF already -https://tools.ietf.org/inventory/reading-tools.shtml[has several^], oops). I have a -https://git.square-r00t.net/[large amount of projects^] I work on in my free time. I have a VM lab (almost a necessity -if one works from home), and my home network is segmented into five different VLANs, four different WLANs tied to a -unique VLAN each, on-site and remote backups, PXE-bootstrapped https://ipxe.org/[iPXE^], with 10Gbps house backbone -using 802.1X backed by RADIUS and LDAP, all with a full x86_64 Linux 1U as my border device. For a home network. - -When I say "passion", I mean it. - -With this, combined with my 18 years of professional Linux/UNIX experience (21 years hobbyist), I've learned a few +With my passion for tech combined with my *18 years* of professional Linux/UNIX experience (*21 years* hobbyist), I've learned a few tricks around the ol' rodeo. Because of my adherence to and knowledge of best practices, care for forward-thinking, and sheer joy I take in solving potentially difficult problems, it is my goal (and particular knack) to get your company's infrastructure and services smooth and stable while retaining flexibility for vast growth. +I have directly applicable experience with, and seek out opportunities in, systems operations in the following roles: + +* Linux Systems Engineer +* Linux Systems Administrator +* Infrastructure Architect + + diff --git a/render.sh b/render.sh index 69a180f..98196dd 100755 --- a/render.sh +++ b/render.sh @@ -1,8 +1,17 @@ #!/bin/bash -# asciidoctor -B /opt/dev/resume -D /tmp/resume -n /opt/dev/resume/cv.adoc -asciidoctor -D /srv/http/resume -n cv.adoc -asciidoctor -D /srv/http/resume -n resume.adoc - -asciidoctor-pdf -D /srv/http/resume/pdf -n -d article cv.adoc -asciidoctor-pdf -D /srv/http/resume/pdf -n -d article resume.adoc +if [[ $(id -u) == 0 ]]; +then + # asciidoctor -B /opt/dev/resume -D /tmp/resume -n /opt/dev/resume/cv.adoc + asciidoctor -D /srv/http/resume -n cv.adoc + asciidoctor -D /srv/http/resume -n resume.adoc + + asciidoctor-pdf -D /srv/http/resume/pdf -n -d article cv.adoc + asciidoctor-pdf -D /srv/http/resume/pdf -n -d article resume.adoc +else + asciidoctor -D /tmp/cv.html -n cv.adoc + asciidoctor -D /tmp/resume.html -n resume.adoc + + asciidoctor-pdf -D /tmp -n -d article cv.adoc + asciidoctor-pdf -D /tmp -n -d article resume.adoc +fi diff --git a/resume.adoc b/resume.adoc index cc50d3b..f4178ef 100644 --- a/resume.adoc +++ b/resume.adoc @@ -1,4 +1,4 @@ -= Résumé += Brent Saner ifeval::["{filetype}" == "pdf"] Brent Saner | +1 (504) 338-1513 | Lehigh Valley area, PA endif::[] @@ -16,19 +16,19 @@ ifeval::["{doctype}" != "article"] endif::[] :idprefix: :toclevels: 7 +:forceinclude: :source-highlighter: highlightjs include::includes/intro.adoc[] -(If you are looking for my curriculum vitae (CV) instead, which contains much more detail, that can be found +(This is my résumé. If you are looking for my curriculum vitae (CV) instead, which contains +much more detail about my experiences and technologies I'm familiar with, that can be found <>.) -include::includes/accomplish.adoc[] +include::includes/exp2.adoc[] include::includes/skills.adoc[] -include::includes/exp2.adoc[] - include::includes/samples.adoc[] include::includes/refs.adoc[] diff --git a/resume.xml b/resume.xml new file mode 100644 index 0000000..0fc1dd3 --- /dev/null +++ b/resume.xml @@ -0,0 +1,81 @@ + + + + + + Brent + Timothy + Saner + + + r00t@r00t2.io + +1 (504) 338-1513 + + + Lehigh Valley + PA + + + + FoxyProxy + + + Systems Engineer Consultant + + 2015-01 + + + + Design and improve infrastructure and service operations + + Reduced infrastructure operatoinal costs by 75% + Designed Single Sign-On backend/architecture for customer services + Architectured centralized authentication with bandwidth accounting + Redesigned internal platforms for GDPR compliance + + + + + + Systems Administrator Consultant + + 2014-03 + 2015-01 + + + + Manage 3000+ proxy/VPN nodes + + Reduced underutilized number of 1500+ physical nodes to ~750 to reduce costs. + + + + + + + FoxyProxy offers HTTP, HTTPS, and VPN (various protocols) as a service. + + + Project.Phree + + + NOC Engineer + + + + + + + + Project.Phree (now defunct) was a community-driven/volunteer initiative to bring city-wide free wireless Internet access to disadvantaged neighborhoods + + + + + + + + +