Compare commits

...

4 Commits

Author SHA1 Message Date
2676e2debd moving to 1.1 release of the pipeline 2024-12-13 13:08:55 -06:00
f11983bef2 Update "MarkdownResume-Pipeline" from "https://git.knownelement.com/reachableceo/MarkdownResume-Pipeline.git@main"
git-vendor-name: MarkdownResume-Pipeline
git-vendor-dir: vendor/git.knownelement.com/reachableceo/MarkdownResume-Pipeline
git-vendor-repository: https://git.knownelement.com/reachableceo/MarkdownResume-Pipeline.git
git-vendor-ref: main
2024-12-13 13:01:31 -06:00
9555692b51 Squashed 'vendor/git.knownelement.com/reachableceo/MarkdownResume-Pipeline/' changes from 7454bad..1d37671
1d37671 refactor...
d617700 refactor...
659ed76 refactor...
a62bcb3 refactor...
4665979 refactor...
aa9a9a9 refactor...
9e97af3 refactor...
d9ef630 refactor...
171eb46 refactor...
1fba3a2 refactor...
5bb19c8 more refactor bits
c5b5557 True client/server refactor .
5c63ee2 True client/server refactor
7d70e0e json refactor
97fff83 json resume skeleton coming together
7f7f284 merged various additional candidate fields from the json to markdown. going to use chatgpt for the csv/json bits .
f734bc7 starting work on json resume output for use with reactive resume and fluentcv

git-subtree-dir: vendor/git.knownelement.com/reachableceo/MarkdownResume-Pipeline
git-subtree-split: 1d37671cfa9e4b56894d66bb6d4f96e4626613c2
2024-12-13 13:01:31 -06:00
a72ee6b588 moving to 1.1 release of the pipeline 2024-12-13 13:01:13 -06:00
50 changed files with 165 additions and 1427 deletions

9
.gitignore vendored
View File

@@ -1,8 +1 @@
local/build-output/client-submission/*.md
local/build-output/client-submission/*.pdf
local/build-output/client-submission/*.doc
local/build-output/CandidateInfoSheet*
local/build-output/job-board/*.md
local/build-output/job-board/*.pdf
local/build-output/job-board/*.doc
local/build-temp/
local/build-temp/*

View File

@@ -1,101 +0,0 @@
"basics": {
"name": "Charles N Wyble",
"label": "Senior (staff) System Engineer",
"image": "https://s.gravatar.com/avatar/12e1b1f99e0d928cd8fd8f8e270f0b93?s=256",
"email": "reachableceo@reachableceo.com",
"url": "https://www.reachableceo.com/",
"summary": "Hello, I'm Charles Wyble a full stack engineer with over a decade of experience building software.",
"profiles": [
{
"network": "GitHub",
"username": "reachableceo",
"url": "https://github.com/reachableceo/"
}
]
},
"work": [
{
"name": "CDK Global",
"location": "Austin, TX",
"description": "A solar software company",
"position": "Senior Software Engineer",
"url": "https://enerflo.com/",
"startDate": "2020-02",
"summary": "Developing new APIs with NestJS, Typescript, GraphQL, and PostgreSQL. ",
"highlights": [
"Build APIs with NestJS, Typescript, GraphQL, and PostgreSQL.",
"Maintain web apps with Laravel & Javascript."
]
}
],
"volunteer": [
{
"organization": "UBports",
"position": "UBports App Dev Steering Committee Head",
"url": "https://ubports.com/",
"startDate": "2018-08",
"endDate": "2021-04",
"summary": "Lead the UBports App Development committee and championed developer experience for the Ubuntu Touch operating system.",
"highlights": [
"Support and develop the open-source Ubuntu Touch operating system."
]
}
],
"education": [
{
"institution": "Messiah College",
"url": "https://www.messiah.edu/",
"area": "Computer and Information Science ",
"studyType": "Bachelor of Science",
"startDate": "2009-09",
"endDate": "2012-05",
"score": "3.83",
"courses": []
}
],
"skills": [
{
"name": "Backend Development",
"keywords": [
"Node.js"
]
}
],
"languages": [
{
"language": "English",
"fluency": "Native speaker"
}
],
"interests": [
{
"name": "Board Games",
"keywords": [
"Terraforming Mars"
]
}
],
"projects": [
{
"name": "OpenStore",
"description": "The official app store for Ubuntu Touch",
"highlights": [
"Built an API first web service built using TypeScript, Node.js, Express, and MongoDB.",
"Created custom web client for searching and managing apps using JavaScript and Vue.js",
"Continued to maintain Qt/QML Ubuntu Touch app for installing applications."
],
"startDate": "2015-04",
"url": "https://open-store.io/",
"roles": [
"Lead Developer"
],
"type": "application"
}
],
"meta": {
"canonical": "https://raw.githubusercontent.com/jsonresume/resume-schema/master/resume.json",
"version": "v1.0.0",
"lastModified": "2022-11-02T12:00:00",
"theme": "kendall"
}
}

View File

@@ -1,4 +0,0 @@
{{CandidateName}}
=====
{{CandidateOneLinerSummary}}

View File

@@ -1,6 +0,0 @@
{{CandidateName}}
=====
{{CandidateOneLinerSummary}}
[ [Github Profile]({{CandidateGithub}}) ] . [ [Linkedin Profile]({{CandidateLinkedin}}) ] . [ {{CandidateEmail}} ] . [ {{CandidatePhone}} ] . [ {{CandidateLocation}} ]

View File

@@ -1,4 +0,0 @@
- Supported Vendavo on RedHat Linux, managed releases, and provided day-to-day developer support.
- Created a homegrown YAML configuration management system, utilizing bash scripting and YAML templates with a CSV-based key/value store to efficiently manage and regenerate environment-specific variables for a line-of-business application across multiple development, testing, staging, and production environments.
\pagebreak

View File

@@ -1 +0,0 @@
- Day to day server operations scheduling downtime etc

View File

@@ -1,2 +0,0 @@
- Security Compliance : worked with risk management/audit to remediate insecure configurations
- Created Alma9 Packer image from scratch

View File

@@ -1,4 +0,0 @@
- Linux systems engineer in a 24x7 transaction processing/ecommerce/flnancial services environment, collaborating with network administration and infrastructure design teams.
- Ensured continuous uptime for high-impact environments, including a 1TB MySQL database, 300TB Oracle database, 1.5TB Oracle Data Warehouse, and a 4,000-store LAMP-based ecommerce system (MerchantAmerica.com).
- Successfully deployed an enterprise-wide Linux backup system, featuring encrypted backups stored on a central server with ISCSI attached network storage, utilizing GNUPG and tar over SSH. Regular backups and restores were tested weekly.
- Led the deployment of Oracle database infrastructure, implementing two Oracle RAC clusters with Dell 6850 servers, Qual Dual Core Xeon processors, and 32GB of RAM each. The clusters ran on RedHat Enterprise Linux 4.0 64bit edition, serving Data Warehouse, Transaction Processing Software, and Credit Card Clearing applications.

View File

@@ -1,3 +0,0 @@
- Contributed to disaster recovery from an Informix Database failure.
- Streamlined FTP server conflguration and deployed open-source remote control software.
- Upgraded network infrastructure from hubs to managed switches.

View File

@@ -1,2 +0,0 @@
- Provided senior-level Linux and web application support globally.
- Developed standardized reply language and scripts, reducing errors in Level I Linux administrator department.

View File

@@ -1,6 +0,0 @@
- Deployed,configured,supported Cloudron and Coolify PAAS and a full IT/SRE/Devops and engineering software stack for a stealth aerospace startup.
- Provided technician support to a team of electrical engineers building the power system for the radar of FrakenSAM in Ukraine. Handled high / low voltage wiring and plumbing and documentation of those systems.
- Provided root cause analysis and remediation for a security breach at a defense contractor.
- Developed a rapidly field deployable mesh networking system for a variety of use cases.
- Developed a secure global video conferencing system using only 3mbps for a major defense contractor.
- Advised on backend infrastructure for broadcasting news and information via radio and internet into hostile powers.

View File

@@ -1,2 +0,0 @@
- Provided system engineering expertise for customer-facing advertising platform (AdSpot) and internal fleet management tool (CPanel).
- Utilized Nginx, Mongrel, Thin, Rails, Merb, Rack, MySQL, memcached, and F5 LTM.

View File

@@ -1,5 +0,0 @@
- Streamlined engineer onboarding by documenting and overhauling the process, consolidating disparate guides into a comprehensive modular set of documents.
- Established a taxonomy for team documentation in the wiki, implementing Confluence best practices for a proper knowledge base.
- Served as the SRE Liaison for cybersecurity functions, ensuring compliance with data locality/partition requirements and pending federal data privacy legislation.
- Focused on fostering a culture of automation and skill development within the SRE team, emphasizing code review, infrastructure as code, versioning, testing, and effective ticket management.
- Contributed to Linux server administration both internally and externally, aiding colleagues with scripting/automation and assisting in the migration from AWS to Azure with zero customer-facing system impact. Additionally, provided day-to-day support for AWS and Azure activities and troubleshooting.

View File

@@ -1,5 +0,0 @@
- Conducted code and design reviews for internal/external team projects and actively participated in broad enterprise collaboration, focusing on large-scale fleet management.
- Managed user account administration, manual/semi-automated server provisioning, trouble tickets, security vulnerability remediation, and system/network auditing.
- Led various projects, including migrating fleet systems from Centos 6 to Centos 7, implementing LXC/ LXD container versions for increased system utilization, and creating an on-premise deployment system (GUMPS) for automated provisioning.
- Deployed network monitoring systems (Zenoss, observium/librenms), utilized librenms as a Conflguration Management Database (CMDB), and implemented a fleet orchestration system (Rundeck).
- Executed extensive vulnerability remediation, OS/application/kernel patching, NIC customization/ optimization, and data migrations while developing and maintaining custom scripts for tasks such as LDAP management and SSL scenarios. Automated processes like re-imaging and ensured continuous distribution of a 40GB dataset of packet captures across a global fleet.

View File

@@ -1,9 +0,0 @@
- Engaged in dynamic work environment focusing on popular web/ecommerce sites, including disneyworld.com and disneyland.com.
- Provided design, architecture, and day-to-day administration for Disney park property sites generating $2 billion annually.
- Provided system engineering and PCI compliance expertise for Disneyland.com, Disneyworld.com, DisneyCruiseLines.com, and 23 related properties.
- Utilized Jboss instances on RHEL3/4 for business logic and employed Windows 2003 with Tomcat/IIS for frontend application serving.
- Automated routine system administration tasks through the creation of batch and VBScript programs for Windows administration.
- Led an Active Directory project for WDIG, designing and implementing a nationwide, highly available system across 3 data centers.
- Managed the migration from Windows NT to Windows 2003 Active Directory domain controllers, including experience with Windows 2008, Centrify, and Samba/Winbind/LDAP/Kerberos.
\pagebreak

View File

@@ -1,11 +0,0 @@
- Developed and implemented a process to switch thousands of desktops providing digital signage functionality from Fedora to Debian in a completely automated fashion using a custom initrd.
- Developed and implemented an internal private cloud orchestration and provisioning system for a hardware development engineering team that handled the entire provisioning lifecycle for physical and virtual systems.
- Developed and implemented standardized language and procedures and incident investigation automation for a large technical support organization with high turnover.
- Developed and implemented an automated order status and payment handling interactive voice response application using Angel.ccm with a backend web service returning Voice XML. This allows call center personnel to focus on revenue generating opportunities instead of administrative matters.
- Provided technician support to a team of electrical engineers building the power system for the radar of FrankenSAM in Ukraine. Handled high / low voltage wiring and plumbing and documentation of those systems.
- Provided root cause analysis , mitigation and remediation of security breaches by advanced persistent threat actors at high value targets.
- Project managed a successful brand new data center build from bare dirt to serving content in 86 days. Oversaw 8 billion dollars of capital deployment.
- Led and consulted tier 1 payment compliance industry (PCI) implementations for some of the worlds largest brands (including at a payment processor).
- Rolled out centralized Active Directory authentication, deployed Dell OpenManage, and upgraded network equipment.
- Deployed password vault, Active Directory PKI, and implemented a ground-up network redesign.
- Designed VmWare NSX network.

View File

@@ -1,20 +0,0 @@
Linux|22 years|RHEL,Debian,Ubuntu,kickstart,PXE, LDAP,SSSD,RPM/Deb package creation, quotas,extended permissions, clustering,NFS,Samba
Unix|5 years|HPUX/Solaris
Windows|22 years|Server (2008 2016),Windows client automated deployment (7,8,10,11),Active Directory,Group Policy,WSUS,Certificate Services,AD DNS,AD DHCP,complex multiple forest and domain setups
Free/Libre/Open Source software|22 years|Apache,Postfix,Qmail,Dovecot,Courier IMAP,Nginx,Matamo,Discourse,Wordpress, Mautic,Dolibarr,Revive Ad Server,Firefly,Cloudron,Coolify,Gitea, HomeAssistant, Jenkins,Rundeck,N8N, LetsEncrypt,ACME,cfssl
Databases|22 years| MySQL,PostgreSQL, Dbeaver,PHPMyAdmin,PostGIS
Cyber Security|22 years|PCI Compliance (tier 1 implementations),OpenVAS<,Lynis,security hardening,audits,breach response and mitigation, patch and vulnerability management. AppArmor, SeLinux, Centrify, Tripwire, Integrit, OSSEC
Virtualization|22 years|VmWare,Parallels,HyperV,KVM,Xen
Networking|22 years|Linux Virtual Server(LVS),HAProxy,Ubiquiti Unifi,Opnsense,Pfsense,DNS,DHCP,IPAM,PXE,IPS,IDS,GRE,IPSEC.Wireguard,OpenVPN,Nebula,Tailscale,RADIUS. Mostly layer2 data center/campus/access some WAN,firewall,layer3
Monitoring|22 years|Uptime Kuma,Librenms,Zabbix,Zenoss,Nagios,Elasticsearch,Logstash,Kibana(ELK)
Storage|22 years|Netapp,EMC,EqualLogic,3par,MSA,TrueNAS/ZFS,iscsi,S3,Azure Storage
Cloud|5 years|AWS,Azure,Kubernetes,Helm,Docker
Containerization|15 years|LXC,Docker,OpenVZ
Configuration management/InfrastructureAsCode(IAC)|22 years|FetchApply,Terraform/OpenTOfU,Ansible,AWX,Hashicorp Packer/Vault
Ticket / incident / project management| 22 years| Jira,ServiceNow,Redmine,RT
Git|15 years|Branching,merging,multiple teams,external vendors,submodules
SRE|5 years| Grafana,Prometheus,Signoz,Wazuh
LLM|2 years|OpenWebUI,QA/validation,RAG,data cleaning/prep
Programming|5 years|J2ME,PHP,Ruby,TCL/TK,Java,C,C++
Automation|22 years|Bash,YAML,TOML,PowerShell,Perl
Embedded development|5 years|Raspberry pi,arduino,seeduino,Lego Mindstorms
1 Linux 22 years RHEL,Debian,Ubuntu,kickstart,PXE, LDAP,SSSD,RPM/Deb package creation, quotas,extended permissions, clustering,NFS,Samba
2 Unix 5 years HPUX/Solaris
3 Windows 22 years Server (2008 2016),Windows client automated deployment (7,8,10,11),Active Directory,Group Policy,WSUS,Certificate Services,AD DNS,AD DHCP,complex multiple forest and domain setups
4 Free/Libre/Open Source software 22 years Apache,Postfix,Qmail,Dovecot,Courier IMAP,Nginx,Matamo,Discourse,Wordpress, Mautic,Dolibarr,Revive Ad Server,Firefly,Cloudron,Coolify,Gitea, HomeAssistant, Jenkins,Rundeck,N8N, LetsEncrypt,ACME,cfssl
5 Databases 22 years MySQL,PostgreSQL, Dbeaver,PHPMyAdmin,PostGIS
6 Cyber Security 22 years PCI Compliance (tier 1 implementations),OpenVAS<,Lynis,security hardening,audits,breach response and mitigation, patch and vulnerability management. AppArmor, SeLinux, Centrify, Tripwire, Integrit, OSSEC
7 Virtualization 22 years VmWare,Parallels,HyperV,KVM,Xen
8 Networking 22 years Linux Virtual Server(LVS),HAProxy,Ubiquiti Unifi,Opnsense,Pfsense,DNS,DHCP,IPAM,PXE,IPS,IDS,GRE,IPSEC.Wireguard,OpenVPN,Nebula,Tailscale,RADIUS. Mostly layer2 data center/campus/access some WAN,firewall,layer3
9 Monitoring 22 years Uptime Kuma,Librenms,Zabbix,Zenoss,Nagios,Elasticsearch,Logstash,Kibana(ELK)
10 Storage 22 years Netapp,EMC,EqualLogic,3par,MSA,TrueNAS/ZFS,iscsi,S3,Azure Storage
11 Cloud 5 years AWS,Azure,Kubernetes,Helm,Docker
12 Containerization 15 years LXC,Docker,OpenVZ
13 Configuration management/InfrastructureAsCode(IAC) 22 years FetchApply,Terraform/OpenTOfU,Ansible,AWX,Hashicorp Packer/Vault
14 Ticket / incident / project management 22 years Jira,ServiceNow,Redmine,RT
15 Git 15 years Branching,merging,multiple teams,external vendors,submodules
16 SRE 5 years Grafana,Prometheus,Signoz,Wazuh
17 LLM 2 years OpenWebUI,QA/validation,RAG,data cleaning/prep
18 Programming 5 years J2ME,PHP,Ruby,TCL/TK,Java,C,C++
19 Automation 22 years Bash,YAML,TOML,PowerShell,Perl
20 Embedded development 5 years Raspberry pi,arduino,seeduino,Lego Mindstorms

View File

@@ -1,11 +0,0 @@
CDK Global,Senior System Engineer,July 2024 - October 2024
Apple Computer,Senior System Administrator,March 2024 - July 2024
SHEIN,Staff Site Reliability Engineer,December 2022 - August 2023
3M,Senior Site Reliability Engineer,March 2020 - November 2022
TippingPoint,Staff System Architect,March 2012 - June 2019
HostGator.com,Automation and Escalation Engineer,March 2011 - May 2012
RippleTV,System Engineer,October 2008 - January 2010
Walt Disney Internet Group,Site Reliability Engineer,August 2006 - September 2007
Electronic Clearing House,Senior System Administrator,April 2005 - July 2006
GSI Commerce,System Administrator,March 2002 - February 2005
ReachableCEO Enterprises,Freelancer,January 2001 - December 2024
1 CDK Global Senior System Engineer July 2024 - October 2024
2 Apple Computer Senior System Administrator March 2024 - July 2024
3 SHEIN Staff Site Reliability Engineer December 2022 - August 2023
4 3M Senior Site Reliability Engineer March 2020 - November 2022
5 TippingPoint Staff System Architect March 2012 - June 2019
6 HostGator.com Automation and Escalation Engineer March 2011 - May 2012
7 RippleTV System Engineer October 2008 - January 2010
8 Walt Disney Internet Group Site Reliability Engineer August 2006 - September 2007
9 Electronic Clearing House Senior System Administrator April 2005 - July 2006
10 GSI Commerce System Administrator March 2002 - February 2005
11 ReachableCEO Enterprises Freelancer January 2001 - December 2024

View File

@@ -1,14 +0,0 @@
title: "Charles N Wyble Candidate Information Sheet"
titlepage: true
titlepage-logo: "D:/tsys/@ReachableCEO/ReachableCEO.png"
toc: true
toc-own-page: true
date: \today
header-left: "\\hspace{1cm}"
header-center: "\\leftmark"
header-right: "Page \\thepage"
footer-left: "Charles N Wyble"
footer-center: "Tenacity. Velocity. Focus."
footer-right: "[Source code](https://git.knownelement.com/reachableceo/ReachableCEOResume)"
urlcolor: blue
page-background: "D:/tsys/@ReachableCEO/ReachableCEOResume/local/build/background5.pdf"

View File

@@ -1,7 +0,0 @@
title: "Charles N Wyble Resume"
header-left: "\\hspace{1cm}"
header-center: "\\leftmark"
header-right: "Page \\thepage"
footer-left: "Charles N Wyble"
urlcolor: blue
page-background: "D:/tsys/@ReachableCEO/ReachableCEOResume/local/build/background5.pdf"

View File

@@ -1,117 +0,0 @@
## Career Highlights
- Developed and implemented a process to switch thousands of desktops providing digital signage functionality from Fedora to Debian in a completely automated fashion using a custom initrd.
- Developed and implemented an internal private cloud orchestration and provisioning system for a hardware development engineering team that handled the entire provisioning lifecycle for physical and virtual systems.
- Developed and implemented standardized language and procedures and incident investigation automation for a large technical support organization with high turnover.
- Developed and implemented an automated order status and payment handling interactive voice response application using Angel.ccm with a backend web service returning Voice XML. This allows call center personnel to focus on revenue generating opportunities instead of administrative matters.
- Provided technician support to a team of electrical engineers building the power system for the radar of FrankenSAM in Ukraine. Handled high / low voltage wiring and plumbing and documentation of those systems.
- Provided root cause analysis , mitigation and remediation of security breaches by advanced persistent threat actors at high value targets.
- Project managed a successful brand new data center build from bare dirt to serving content in 86 days. Oversaw 8 billion dollars of capital deployment.
- Led and consulted tier 1 payment compliance industry (PCI) implementations for some of the worlds largest brands (including at a payment processor).
- Rolled out centralized Active Directory authentication, deployed Dell OpenManage, and upgraded network equipment.
- Deployed password vault, Active Directory PKI, and implemented a ground-up network redesign.
- Designed VmWare NSX network.
\pagebreak
## Employment History
**CDK Global | Senior System Engineer | July 2024 - October 2024**
- Security Compliance : worked with risk management/audit to remediate insecure configurations
- Created Alma9 Packer image from scratch
**Apple Computer | Senior System Administrator | March 2024 - July 2024**
- Day to day server operations scheduling downtime etc
**SHEIN | Staff Site Reliability Engineer | December 2022 - August 2023**
- Streamlined engineer onboarding by documenting and overhauling the process, consolidating disparate guides into a comprehensive modular set of documents.
- Established a taxonomy for team documentation in the wiki, implementing Confluence best practices for a proper knowledge base.
- Served as the SRE Liaison for cybersecurity functions, ensuring compliance with data locality/partition requirements and pending federal data privacy legislation.
- Focused on fostering a culture of automation and skill development within the SRE team, emphasizing code review, infrastructure as code, versioning, testing, and effective ticket management.
- Contributed to Linux server administration both internally and externally, aiding colleagues with scripting/automation and assisting in the migration from AWS to Azure with zero customer-facing system impact. Additionally, provided day-to-day support for AWS and Azure activities and troubleshooting.
**3M | Senior Site Reliability Engineer | March 2020 - November 2022**
- Supported Vendavo on RedHat Linux, managed releases, and provided day-to-day developer support.
- Created a homegrown YAML configuration management system, utilizing bash scripting and YAML templates with a CSV-based key/value store to efficiently manage and regenerate environment-specific variables for a line-of-business application across multiple development, testing, staging, and production environments.
\pagebreak
**TippingPoint | Staff System Architect | March 2012 - June 2019**
- Conducted code and design reviews for internal/external team projects and actively participated in broad enterprise collaboration, focusing on large-scale fleet management.
- Managed user account administration, manual/semi-automated server provisioning, trouble tickets, security vulnerability remediation, and system/network auditing.
- Led various projects, including migrating fleet systems from Centos 6 to Centos 7, implementing LXC/ LXD container versions for increased system utilization, and creating an on-premise deployment system (GUMPS) for automated provisioning.
- Deployed network monitoring systems (Zenoss, observium/librenms), utilized librenms as a Conflguration Management Database (CMDB), and implemented a fleet orchestration system (Rundeck).
- Executed extensive vulnerability remediation, OS/application/kernel patching, NIC customization/ optimization, and data migrations while developing and maintaining custom scripts for tasks such as LDAP management and SSL scenarios. Automated processes like re-imaging and ensured continuous distribution of a 40GB dataset of packet captures across a global fleet.
**HostGator.com | Automation and Escalation Engineer | March 2011 - May 2012**
- Provided senior-level Linux and web application support globally.
- Developed standardized reply language and scripts, reducing errors in Level I Linux administrator department.
**RippleTV | System Engineer | October 2008 - January 2010**
- Provided system engineering expertise for customer-facing advertising platform (AdSpot) and internal fleet management tool (CPanel).
- Utilized Nginx, Mongrel, Thin, Rails, Merb, Rack, MySQL, memcached, and F5 LTM.
**Walt Disney Internet Group | Site Reliability Engineer | August 2006 - September 2007**
- Engaged in dynamic work environment focusing on popular web/ecommerce sites, including disneyworld.com and disneyland.com.
- Provided design, architecture, and day-to-day administration for Disney park property sites generating $2 billion annually.
- Provided system engineering and PCI compliance expertise for Disneyland.com, Disneyworld.com, DisneyCruiseLines.com, and 23 related properties.
- Utilized Jboss instances on RHEL3/4 for business logic and employed Windows 2003 with Tomcat/IIS for frontend application serving.
- Automated routine system administration tasks through the creation of batch and VBScript programs for Windows administration.
- Led an Active Directory project for WDIG, designing and implementing a nationwide, highly available system across 3 data centers.
- Managed the migration from Windows NT to Windows 2003 Active Directory domain controllers, including experience with Windows 2008, Centrify, and Samba/Winbind/LDAP/Kerberos.
\pagebreak
**Electronic Clearing House | Senior System Administrator | April 2005 - July 2006**
- Linux systems engineer in a 24x7 transaction processing/ecommerce/flnancial services environment, collaborating with network administration and infrastructure design teams.
- Ensured continuous uptime for high-impact environments, including a 1TB MySQL database, 300TB Oracle database, 1.5TB Oracle Data Warehouse, and a 4,000-store LAMP-based ecommerce system (MerchantAmerica.com).
- Successfully deployed an enterprise-wide Linux backup system, featuring encrypted backups stored on a central server with ISCSI attached network storage, utilizing GNUPG and tar over SSH. Regular backups and restores were tested weekly.
- Led the deployment of Oracle database infrastructure, implementing two Oracle RAC clusters with Dell 6850 servers, Qual Dual Core Xeon processors, and 32GB of RAM each. The clusters ran on RedHat Enterprise Linux 4.0 64bit edition, serving Data Warehouse, Transaction Processing Software, and Credit Card Clearing applications.
**GSI Commerce | System Administrator | March 2002 - February 2005**
- Contributed to disaster recovery from an Informix Database failure.
- Streamlined FTP server conflguration and deployed open-source remote control software.
- Upgraded network infrastructure from hubs to managed switches.
**ReachableCEO Enterprises | Freelancer | January 2001 - December 2024**
- Deployed,configured,supported Cloudron and Coolify PAAS and a full IT/SRE/Devops and engineering software stack for a stealth aerospace startup.
- Provided technician support to a team of electrical engineers building the power system for the radar of FrakenSAM in Ukraine. Handled high / low voltage wiring and plumbing and documentation of those systems.
- Provided root cause analysis and remediation for a security breach at a defense contractor.
- Developed a rapidly field deployable mesh networking system for a variety of use cases.
- Developed a secure global video conferencing system using only 3mbps for a major defense contractor.
- Advised on backend infrastructure for broadcasting news and information via radio and internet into hostile powers.
\pagebreak
## Skills
|Skill|Experience|Skill Details|
|---|---|---|
|**Linux**|22 years|RHEL,Debian,Ubuntu,kickstart,PXE, LDAP,SSSD,RPM/Deb package creation, quotas,extended permissions, clustering,NFS,Samba|
|**Unix**|5 years|HPUX/Solaris|
|**Windows**|22 years|Server (2008 2016),Windows client automated deployment (7,8,10,11),Active Directory,Group Policy,WSUS,Certificate Services,AD DNS,AD DHCP,complex multiple forest and domain setups |
|**Free/Libre/Open Source software**|22 years|Apache,Postfix,Qmail,Dovecot,Courier IMAP,Nginx,Matamo,Discourse,Wordpress, Mautic,Dolibarr,Revive Ad Server,Firefly,Cloudron,Coolify,Gitea, HomeAssistant, Jenkins,Rundeck,N8N, LetsEncrypt,ACME,cfssl|
|**Databases**|22 years| MySQL,PostgreSQL, Dbeaver,PHPMyAdmin,PostGIS|
|**Cyber Security**|22 years|PCI Compliance (tier 1 implementations),OpenVAS<,Lynis,security hardening,audits,breach response and mitigation, patch and vulnerability management. AppArmor, SeLinux, Centrify, Tripwire, Integrit, OSSEC |
|**Virtualization**|22 years|VmWare,Parallels,HyperV,KVM,Xen|
|**Networking**|22 years|Linux Virtual Server(LVS),HAProxy,Ubiquiti Unifi,Opnsense,Pfsense,DNS,DHCP,IPAM,PXE,IPS,IDS,GRE,IPSEC.Wireguard,OpenVPN,Nebula,Tailscale,RADIUS. Mostly layer2 data center/campus/access some WAN,firewall,layer3 |
|**Monitoring**|22 years|Uptime Kuma,Librenms,Zabbix,Zenoss,Nagios,Elasticsearch,Logstash,Kibana(ELK)|
|**Storage**|22 years|Netapp,EMC,EqualLogic,3par,MSA,TrueNAS/ZFS,iscsi,S3,Azure Storage|
|**Cloud**|5 years|AWS,Azure,Kubernetes,Helm,Docker|
|**Containerization**|15 years|LXC,Docker,OpenVZ|
|**Configuration management/InfrastructureAsCode(IAC)**|22 years|FetchApply,Terraform/OpenTOfU,Ansible,AWX,Hashicorp Packer/Vault|
|**Ticket / incident / project management**| 22 years| Jira,ServiceNow,Redmine,RT|
|**Git**|15 years|Branching,merging,multiple teams,external vendors,submodules |
|**SRE**|5 years| Grafana,Prometheus,Signoz,Wazuh|
|**LLM**|2 years|OpenWebUI,QA/validation,RAG,data cleaning/prep|
|**Programming**|5 years|J2ME,PHP,Ruby,TCL/TK,Java,C,C++|
|**Automation**|22 years|Bash,YAML,TOML,PowerShell,Perl|
|**Embedded development**|5 years|Raspberry pi,arduino,seeduino,Lego Mindstorms|

View File

@@ -1,4 +0,0 @@
Charles N Wyble
=====

View File

@@ -1,6 +0,0 @@
Charles N Wyble
=====
[ [Github Profile](https://www.github.com/reachableceo) ] . [ [Linkedin Profile](https://www.linkedin.com/in/charles-wyble-412007337) ] . [ reachableceo@reachableceo.com ] . [ 1 818 280 7059 ] . [ Austin TX / Raleigh NC / Remote ]

View File

@@ -1,139 +0,0 @@
## Career Highlights
- Developed and implemented a process to switch thousands of desktops providing digital signage functionality from Fedora to Debian in a completely automated fashion using a custom initrd.
- Developed and implemented an internal private cloud orchestration and provisioning system for a hardware development engineering team that handled the entire provisioning lifecycle for physical and virtual systems.
- Developed and implemented standardized language and procedures and incident investigation automation for a large technical support organization with high turnover.
- Developed and implemented an automated order status and payment handling interactive voice response application using Angel.ccm with a backend web service returning Voice XML. This allows call center personnel to focus on revenue generating opportunities instead of administrative matters.
- Provided technician support to a team of electrical engineers building the power system for the radar of FrankenSAM in Ukraine. Handled high / low voltage wiring and plumbing and documentation of those systems.
- Provided root cause analysis , mitigation and remediation of security breaches by advanced persistent threat actors at high value targets.
- Project managed a successful brand new data center build from bare dirt to serving content in 86 days. Oversaw 8 billion dollars of capital deployment.
- Led and consulted tier 1 payment compliance industry (PCI) implementations for some of the worlds largest brands (including at a payment processor).
- Rolled out centralized Active Directory authentication, deployed Dell OpenManage, and upgraded network equipment.
- Deployed password vault, Active Directory PKI, and implemented a ground-up network redesign.
- Designed VmWare NSX network.
\pagebreak
## Employment History
**CDK Global | Senior System Engineer | July 2024 - October 2024**
- Security Compliance : worked with risk management/audit to remediate insecure configurations
- Created Alma9 Packer image from scratch
**Apple Computer | Senior System Administrator | March 2024 - July 2024**
- Day to day server operations scheduling downtime etc
**SHEIN | Staff Site Reliability Engineer | December 2022 - August 2023**
- Streamlined engineer onboarding by documenting and overhauling the process, consolidating disparate guides into a comprehensive modular set of documents.
- Established a taxonomy for team documentation in the wiki, implementing Confluence best practices for a proper knowledge base.
- Served as the SRE Liaison for cybersecurity functions, ensuring compliance with data locality/partition requirements and pending federal data privacy legislation.
- Focused on fostering a culture of automation and skill development within the SRE team, emphasizing code review, infrastructure as code, versioning, testing, and effective ticket management.
- Contributed to Linux server administration both internally and externally, aiding colleagues with scripting/automation and assisting in the migration from AWS to Azure with zero customer-facing system impact. Additionally, provided day-to-day support for AWS and Azure activities and troubleshooting.
**3M | Senior Site Reliability Engineer | March 2020 - November 2022**
- Supported Vendavo on RedHat Linux, managed releases, and provided day-to-day developer support.
- Created a homegrown YAML configuration management system, utilizing bash scripting and YAML templates with a CSV-based key/value store to efficiently manage and regenerate environment-specific variables for a line-of-business application across multiple development, testing, staging, and production environments.
\pagebreak
**TippingPoint | Staff System Architect | March 2012 - June 2019**
- Conducted code and design reviews for internal/external team projects and actively participated in broad enterprise collaboration, focusing on large-scale fleet management.
- Managed user account administration, manual/semi-automated server provisioning, trouble tickets, security vulnerability remediation, and system/network auditing.
- Led various projects, including migrating fleet systems from Centos 6 to Centos 7, implementing LXC/ LXD container versions for increased system utilization, and creating an on-premise deployment system (GUMPS) for automated provisioning.
- Deployed network monitoring systems (Zenoss, observium/librenms), utilized librenms as a Conflguration Management Database (CMDB), and implemented a fleet orchestration system (Rundeck).
- Executed extensive vulnerability remediation, OS/application/kernel patching, NIC customization/ optimization, and data migrations while developing and maintaining custom scripts for tasks such as LDAP management and SSL scenarios. Automated processes like re-imaging and ensured continuous distribution of a 40GB dataset of packet captures across a global fleet.
**HostGator.com | Automation and Escalation Engineer | March 2011 - May 2012**
- Provided senior-level Linux and web application support globally.
- Developed standardized reply language and scripts, reducing errors in Level I Linux administrator department.
**RippleTV | System Engineer | October 2008 - January 2010**
- Provided system engineering expertise for customer-facing advertising platform (AdSpot) and internal fleet management tool (CPanel).
- Utilized Nginx, Mongrel, Thin, Rails, Merb, Rack, MySQL, memcached, and F5 LTM.
**Walt Disney Internet Group | Site Reliability Engineer | August 2006 - September 2007**
- Engaged in dynamic work environment focusing on popular web/ecommerce sites, including disneyworld.com and disneyland.com.
- Provided design, architecture, and day-to-day administration for Disney park property sites generating $2 billion annually.
- Provided system engineering and PCI compliance expertise for Disneyland.com, Disneyworld.com, DisneyCruiseLines.com, and 23 related properties.
- Utilized Jboss instances on RHEL3/4 for business logic and employed Windows 2003 with Tomcat/IIS for frontend application serving.
- Automated routine system administration tasks through the creation of batch and VBScript programs for Windows administration.
- Led an Active Directory project for WDIG, designing and implementing a nationwide, highly available system across 3 data centers.
- Managed the migration from Windows NT to Windows 2003 Active Directory domain controllers, including experience with Windows 2008, Centrify, and Samba/Winbind/LDAP/Kerberos.
\pagebreak
**Electronic Clearing House | Senior System Administrator | April 2005 - July 2006**
- Linux systems engineer in a 24x7 transaction processing/ecommerce/flnancial services environment, collaborating with network administration and infrastructure design teams.
- Ensured continuous uptime for high-impact environments, including a 1TB MySQL database, 300TB Oracle database, 1.5TB Oracle Data Warehouse, and a 4,000-store LAMP-based ecommerce system (MerchantAmerica.com).
- Successfully deployed an enterprise-wide Linux backup system, featuring encrypted backups stored on a central server with ISCSI attached network storage, utilizing GNUPG and tar over SSH. Regular backups and restores were tested weekly.
- Led the deployment of Oracle database infrastructure, implementing two Oracle RAC clusters with Dell 6850 servers, Qual Dual Core Xeon processors, and 32GB of RAM each. The clusters ran on RedHat Enterprise Linux 4.0 64bit edition, serving Data Warehouse, Transaction Processing Software, and Credit Card Clearing applications.
**GSI Commerce | System Administrator | March 2002 - February 2005**
- Contributed to disaster recovery from an Informix Database failure.
- Streamlined FTP server conflguration and deployed open-source remote control software.
- Upgraded network infrastructure from hubs to managed switches.
**ReachableCEO Enterprises | Freelancer | January 2001 - December 2024**
- Deployed,configured,supported Cloudron and Coolify PAAS and a full IT/SRE/Devops and engineering software stack for a stealth aerospace startup.
- Provided technician support to a team of electrical engineers building the power system for the radar of FrakenSAM in Ukraine. Handled high / low voltage wiring and plumbing and documentation of those systems.
- Provided root cause analysis and remediation for a security breach at a defense contractor.
- Developed a rapidly field deployable mesh networking system for a variety of use cases.
- Developed a secure global video conferencing system using only 3mbps for a major defense contractor.
- Advised on backend infrastructure for broadcasting news and information via radio and internet into hostile powers.
\pagebreak
## Skills
|Skill|Experience|Skill Details|
|---|---|---|
|**Linux**|22 years|RHEL,Debian,Ubuntu,kickstart,PXE, LDAP,SSSD,RPM/Deb package creation, quotas,extended permissions, clustering,NFS,Samba|
|**Unix**|5 years|HPUX/Solaris|
|**Windows**|22 years|Server (2008 2016),Windows client automated deployment (7,8,10,11),Active Directory,Group Policy,WSUS,Certificate Services,AD DNS,AD DHCP,complex multiple forest and domain setups |
|**Free/Libre/Open Source software**|22 years|Apache,Postfix,Qmail,Dovecot,Courier IMAP,Nginx,Matamo,Discourse,Wordpress, Mautic,Dolibarr,Revive Ad Server,Firefly,Cloudron,Coolify,Gitea, HomeAssistant, Jenkins,Rundeck,N8N, LetsEncrypt,ACME,cfssl|
|**Databases**|22 years| MySQL,PostgreSQL, Dbeaver,PHPMyAdmin,PostGIS|
|**Cyber Security**|22 years|PCI Compliance (tier 1 implementations),OpenVAS<,Lynis,security hardening,audits,breach response and mitigation, patch and vulnerability management. AppArmor, SeLinux, Centrify, Tripwire, Integrit, OSSEC |
|**Virtualization**|22 years|VmWare,Parallels,HyperV,KVM,Xen|
|**Networking**|22 years|Linux Virtual Server(LVS),HAProxy,Ubiquiti Unifi,Opnsense,Pfsense,DNS,DHCP,IPAM,PXE,IPS,IDS,GRE,IPSEC.Wireguard,OpenVPN,Nebula,Tailscale,RADIUS. Mostly layer2 data center/campus/access some WAN,firewall,layer3 |
|**Monitoring**|22 years|Uptime Kuma,Librenms,Zabbix,Zenoss,Nagios,Elasticsearch,Logstash,Kibana(ELK)|
|**Storage**|22 years|Netapp,EMC,EqualLogic,3par,MSA,TrueNAS/ZFS,iscsi,S3,Azure Storage|
|**Cloud**|5 years|AWS,Azure,Kubernetes,Helm,Docker|
|**Containerization**|15 years|LXC,Docker,OpenVZ|
|**Configuration management/InfrastructureAsCode(IAC)**|22 years|FetchApply,Terraform/OpenTOfU,Ansible,AWX,Hashicorp Packer/Vault|
|**Ticket / incident / project management**| 22 years| Jira,ServiceNow,Redmine,RT|
|**Git**|15 years|Branching,merging,multiple teams,external vendors,submodules |
|**SRE**|5 years| Grafana,Prometheus,Signoz,Wazuh|
|**LLM**|2 years|OpenWebUI,QA/validation,RAG,data cleaning/prep|
|**Programming**|5 years|J2ME,PHP,Ruby,TCL/TK,Java,C,C++|
|**Automation**|22 years|Bash,YAML,TOML,PowerShell,Perl|
|**Embedded development**|5 years|Raspberry pi,arduino,seeduino,Lego Mindstorms|

View File

@@ -1,12 +0,0 @@
title: "Charles N Wyble Resume"
titlepage: true
titlepage-logo: "D:/tsys/@ReachableCEO/ReachableCEO.png"
date: \today
header-left: "\\hspace{1cm}"
header-center: "\\leftmark"
header-right: "Page \\thepage"
footer-left: "Charles N Wyble"
footer-center: "Tenacity. Velocity. Focus."
footer-right: "[Source code](https://git.knownelement.com/reachableceo/ReachableCEOResume)"
urlcolor: blue
page-background: "D:/tsys/@ReachableCEO/ReachableCEOResume/local/build/background5.pdf"

View File

@@ -1,102 +0,0 @@
## Career Highlights
- Developed and implemented a process to switch thousands of desktops providing digital signage functionality from Fedora to Debian in a completely automated fashion using a custom initrd.
- Developed and implemented an internal private cloud orchestration and provisioning system for a hardware development engineering team that handled the entire provisioning lifecycle for physical and virtual systems.
- Developed and implemented standardized language and procedures and incident investigation automation for a large technical support organization with high turnover.
- Developed and implemented an automated order status and payment handling interactive voice response application using Angel.ccm with a backend web service returning Voice XML. This allows call center personnel to focus on revenue generating opportunities instead of administrative matters.
- Provided technician support to a team of electrical engineers building the power system for the radar of FrankenSAM in Ukraine. Handled high / low voltage wiring and plumbing and documentation of those systems.
- Provided root cause analysis , mitigation and remediation of security breaches by advanced persistent threat actors at high value targets.
- Project managed a successful brand new data center build from bare dirt to serving content in 86 days. Oversaw 8 billion dollars of capital deployment.
- Led and consulted tier 1 payment compliance industry (PCI) implementations for some of the worlds largest brands (including at a payment processor).
- Rolled out centralized Active Directory authentication, deployed Dell OpenManage, and upgraded network equipment.
- Deployed password vault, Active Directory PKI, and implemented a ground-up network redesign.
- Designed VmWare NSX network.
\pagebreak
## Employment History
**CDK Global | Senior System Engineer | July 2024 - October 2024**
- Security Compliance : worked with risk management/audit to remediate insecure configurations
- Created Alma9 Packer image from scratch
**Apple Computer | Senior System Administrator | March 2024 - July 2024**
- Day to day server operations scheduling downtime etc
**SHEIN | Staff Site Reliability Engineer | December 2022 - August 2023**
- Streamlined engineer onboarding by documenting and overhauling the process, consolidating disparate guides into a comprehensive modular set of documents.
- Established a taxonomy for team documentation in the wiki, implementing Confluence best practices for a proper knowledge base.
- Served as the SRE Liaison for cybersecurity functions, ensuring compliance with data locality/partition requirements and pending federal data privacy legislation.
- Focused on fostering a culture of automation and skill development within the SRE team, emphasizing code review, infrastructure as code, versioning, testing, and effective ticket management.
- Contributed to Linux server administration both internally and externally, aiding colleagues with scripting/automation and assisting in the migration from AWS to Azure with zero customer-facing system impact. Additionally, provided day-to-day support for AWS and Azure activities and troubleshooting.
**3M | Senior Site Reliability Engineer | March 2020 - November 2022**
- Supported Vendavo on RedHat Linux, managed releases, and provided day-to-day developer support.
- Created a homegrown YAML configuration management system, utilizing bash scripting and YAML templates with a CSV-based key/value store to efficiently manage and regenerate environment-specific variables for a line-of-business application across multiple development, testing, staging, and production environments.
\pagebreak
**TippingPoint | Staff System Architect | March 2012 - June 2019**
- Conducted code and design reviews for internal/external team projects and actively participated in broad enterprise collaboration, focusing on large-scale fleet management.
- Managed user account administration, manual/semi-automated server provisioning, trouble tickets, security vulnerability remediation, and system/network auditing.
- Led various projects, including migrating fleet systems from Centos 6 to Centos 7, implementing LXC/ LXD container versions for increased system utilization, and creating an on-premise deployment system (GUMPS) for automated provisioning.
- Deployed network monitoring systems (Zenoss, observium/librenms), utilized librenms as a Conflguration Management Database (CMDB), and implemented a fleet orchestration system (Rundeck).
- Executed extensive vulnerability remediation, OS/application/kernel patching, NIC customization/ optimization, and data migrations while developing and maintaining custom scripts for tasks such as LDAP management and SSL scenarios. Automated processes like re-imaging and ensured continuous distribution of a 40GB dataset of packet captures across a global fleet.
**HostGator.com | Automation and Escalation Engineer | March 2011 - May 2012**
- Provided senior-level Linux and web application support globally.
- Developed standardized reply language and scripts, reducing errors in Level I Linux administrator department.
**RippleTV | System Engineer | October 2008 - January 2010**
- Provided system engineering expertise for customer-facing advertising platform (AdSpot) and internal fleet management tool (CPanel).
- Utilized Nginx, Mongrel, Thin, Rails, Merb, Rack, MySQL, memcached, and F5 LTM.
**Walt Disney Internet Group | Site Reliability Engineer | August 2006 - September 2007**
- Engaged in dynamic work environment focusing on popular web/ecommerce sites, including disneyworld.com and disneyland.com.
- Provided design, architecture, and day-to-day administration for Disney park property sites generating $2 billion annually.
- Provided system engineering and PCI compliance expertise for Disneyland.com, Disneyworld.com, DisneyCruiseLines.com, and 23 related properties.
- Utilized Jboss instances on RHEL3/4 for business logic and employed Windows 2003 with Tomcat/IIS for frontend application serving.
- Automated routine system administration tasks through the creation of batch and VBScript programs for Windows administration.
- Led an Active Directory project for WDIG, designing and implementing a nationwide, highly available system across 3 data centers.
- Managed the migration from Windows NT to Windows 2003 Active Directory domain controllers, including experience with Windows 2008, Centrify, and Samba/Winbind/LDAP/Kerberos.
\pagebreak
**Electronic Clearing House | Senior System Administrator | April 2005 - July 2006**
- Linux systems engineer in a 24x7 transaction processing/ecommerce/flnancial services environment, collaborating with network administration and infrastructure design teams.
- Ensured continuous uptime for high-impact environments, including a 1TB MySQL database, 300TB Oracle database, 1.5TB Oracle Data Warehouse, and a 4,000-store LAMP-based ecommerce system (MerchantAmerica.com).
- Successfully deployed an enterprise-wide Linux backup system, featuring encrypted backups stored on a central server with ISCSI attached network storage, utilizing GNUPG and tar over SSH. Regular backups and restores were tested weekly.
- Led the deployment of Oracle database infrastructure, implementing two Oracle RAC clusters with Dell 6850 servers, Qual Dual Core Xeon processors, and 32GB of RAM each. The clusters ran on RedHat Enterprise Linux 4.0 64bit edition, serving Data Warehouse, Transaction Processing Software, and Credit Card Clearing applications.
**GSI Commerce | System Administrator | March 2002 - February 2005**
- Contributed to disaster recovery from an Informix Database failure.
- Streamlined FTP server conflguration and deployed open-source remote control software.
- Upgraded network infrastructure from hubs to managed switches.
**ReachableCEO Enterprises | Freelancer | January 2001 - December 2024**
- Deployed,configured,supported Cloudron and Coolify PAAS and a full IT/SRE/Devops and engineering software stack for a stealth aerospace startup.
- Provided technician support to a team of electrical engineers building the power system for the radar of FrakenSAM in Ukraine. Handled high / low voltage wiring and plumbing and documentation of those systems.
- Provided root cause analysis and remediation for a security breach at a defense contractor.
- Developed a rapidly field deployable mesh networking system for a variety of use cases.
- Developed a secure global video conferencing system using only 3mbps for a major defense contractor.
- Advised on backend infrastructure for broadcasting news and information via radio and internet into hostile powers.
\pagebreak
## Skills
|Skill|Experience|Skill Details|
|---|---|---|
|**Linux**|22 years|RHEL,Debian,Ubuntu,kickstart,PXE, LDAP,SSSD,RPM/Deb package creation, quotas,extended permissions, clustering,NFS,Samba|
|**Unix**|5 years|HPUX/Solaris|
|**Windows**|22 years|Server (2008 2016),Windows client automated deployment (7,8,10,11),Active Directory,Group Policy,WSUS,Certificate Services,AD DNS,AD DHCP,complex multiple forest and domain setups |
|**Free/Libre/Open Source software**|22 years|Apache,Postfix,Qmail,Dovecot,Courier IMAP,Nginx,Matamo,Discourse,Wordpress, Mautic,Dolibarr,Revive Ad Server,Firefly,Cloudron,Coolify,Gitea, HomeAssistant, Jenkins,Rundeck,N8N, LetsEncrypt,ACME,cfssl|
|**Databases**|22 years| MySQL,PostgreSQL, Dbeaver,PHPMyAdmin,PostGIS|

View File

@@ -3,79 +3,8 @@
# A client script to setup variables for and execute:
#../vendor/git.knownelement.com/reachableceo/MarkdownResume-Pipeline/build/build-pipeline-server.sh
source ./CandidateVariables.env
#############################################################################
#SET THIS OR NOTHING WILL WORK
export PipelineClientWorkingDir="D:/tsys/@ReachableCEO/ReachableCEOResume/local"
#SET THIS OR NOTHING WILL WORK
#############################################################################
###################################################
# Modify these values to suit
###################################################
########################
# Contact info
########################
export CandidateName="Charles N Wyble"
export CandidatePhone="1 818 280 7059"
export CandidateLocation="Austin TX / Raleigh NC / Remote "
export CandidateEmail="reachableceo@reachableceo.com"
########################
# Profile information
########################
export CandidateOneLineSummary="Senior (**Staff level**) **System Engineer/SRE/Architect** with extensive Linux/Windows/Networking/Cyber security background and experience
"
export CandidateLinkedin="https://www.linkedin.com/in/charles-wyble-412007337"
export CandidateGithub="https://www.github.com/reachableceo"
export CandidateTagline="Tenacity. Velocity. Focus."
########################
# Formatting options
########################
export CandidateLogo="D:/tsys/@ReachableCEO/ReachableCEO.png"
export SourceCode="https://git.knownelement.com/reachableceo/ReachableCEOResume"
export URLCOLOR="blue"
export PAGEBACKGROUND="$PipelineClientWorkingDir/build/background5.pdf"
##########################
# Candidate info sheet
##########################
export CandidatePreferredContactMethod="Email will get the fastest response."
export CandidateWorkAuthorization="US Citizen"
export CandidateEmploymentStatus="Not currently employed"
export CandidateCurrentLocation="Austin, TX"
export CandidateCurrentTimezone="CST"
export CandidateWorkableTimezones="PST/CST/EST"
export CandidateInterviewAvailability="Immediate"
export CandidateStartAvailability="Two weeks"
export CandidateHighestEducation="High School"
export CandidateGraduationYear="2002"
export CandidateSchoolName="Osborne Christian School"
export CandidateSchoolLocation="Los Angeles, CA"
export CandidateLastProject="CDK Global October 2024"
export CandidateDOB="09/14"
export CandidateTotalExperience="22 years"
########################
#Compensation targets
########################
export CandidateRelocationNetMinimumAmount="5,000.00"
export CandidateRateSheetRemoteW2HourlyMinimum="\$60.00"
export CandidateRateSheetRemoteW2AnnualMinimum="\$120,000.00"
export CandidateRateSheetRemote1099HourlyMinimum="\$75.00"
export CandidateRateSheetRemoteW2HourlyPrefer="\$70.00"
export CandidateRateSheetRemoteW2AnnualPrefer="\$140,000.00"
export CandidateRateSheetRemote1099HourlyPrefer="\$85.00"
####################################################
#DO NOT CHANGE ANYTHING BELOW THIS LINE
@@ -88,14 +17,15 @@ export CandidateRateSheetRemote1099HourlyPrefer="\$85.00"
export MO_PATH="bash ../../vendor/git.knownelement.com/ExternalVendorCode/mo/mo"
export BUILD_TEMP_DIR="$PipelineClientWorkingDir/build-temp"
export BUILD_TEMP_DIR="$PipelineClientWorkingDir/build-temp/MarkdownResume"
export BUILD_OUTPUT_DIR="D:/tsys/@ReachableCEO/resume.reachableceo.com/"
export BUILDYAML_JOBBOARD="$BUILD_TEMP_DIR/JobBoard.yml"
export BUILDYAML_CLIENTSUBMISSION="$BUILD_TEMP_DIR/ClientSubmission.yml"
export BUILDYAML_CANDIDATEINFOSHEET="$BUILD_TEMP_DIR/CandidateInfoSheet.yml"
export BUILD_OUTPUT_DIR="D:/tsys/@ReachableCEO/resume.reachableceo.com/"
export CandidateInfoSheetMarkdownOutputFile="$BUILD_OUTPUT_DIR/recruiter/CandidateInfoSheet.md"
export CandidateInfoSheetPDFOutputFIle="$BUILD_OUTPUT_DIR/recruiter/CandidateInfoSheet.pdf"
export CandidateInfoSheetPDFOutputFile="$BUILD_OUTPUT_DIR/recruiter/CandidateInfoSheet.pdf"
export JobBoardMarkdownOutputFile="$BUILD_OUTPUT_DIR/job-board/CharlesNWyble-Resume.md"
export JobBoardPDFOutputFile="$BUILD_OUTPUT_DIR/job-board/CharlesNWyble-Resume.pdf"
@@ -107,4 +37,4 @@ export ClientSubmissionMSWordOutputFile="$BUILD_OUTPUT_DIR/client-submit/Charles
# Call the build-pipeline-server in the vendored repository to produce output artifacts
bash ../../vendor/git.knownelement.com/reachableceo/MarkdownResume-Pipeline/build/build-pipeline-server.sh
bash ../../vendor/git.knownelement.com/reachableceo/MarkdownResume-Pipeline/build/build-pipeline-server-markdown.sh

View File

@@ -1,9 +1,2 @@
build-output/client-submission/*.md
build-output/client-submission/*.pdf
build-output/client-submission/*.doc
build-output/CandidateInfoSheet*
build-output/job-board/*.md
build-output/job-board/*.pdf
build-output/job-board/*.doc
build-temp/*.yml
build-temp/*.md
build-output/*
build-temp/*

View File

@@ -1,121 +0,0 @@
# {{CandidateName}} Candidate Information Sheet
## Introduction
Hello,
I apologize for the form letter response.
I receive a high volume of recruiter emails every day and I've found this letter to be the most efficient way to
handle the high volume of emails and reduce back and forth emails/texts/calls.
If you have any questions/comments/concerns not covered by this document, please let me know via e-mail and I'm happy to address them!
If you ask me something answered in this document, I will not respond and will not move forward with the opportunity, so please read it in detail!
## Re: share my ID over email
I WILL NOT share my (full or redacted) photo ID over email or any other electronic written
communication. If that is "required" then I have no interest in moving forward with this opportunity.
I am happy to get on a teams/zoom/google meet etc call and show my ID.
## Re: professional references
I am happy to provide professional references once an interview with the end client/customer/hiring manager/team has been scheduled. I will NOT provide references up front. If that is "required" then I have no interest in moving forward with this opportunity.
## Re: relocation
if the role is not based in **{{CandidateLocation}}** or **Other Location** I will need to re-locate
| Question | Answer |
|-------------------------------------------|--------|
| Am I open to relocation? | Yes |
| Am I willing to re-locate at own expense? | No |
| Am I open to up to 100% travel | Yes |
Please be aware that:
- I will **only re-locate at the employer expense**.
- I will need **two weeks of time** to re-locate.
- The net amount of the re-location benefit **MUST be at least {{CandidateRelocationNetMinimumAmount}}** to fully compensate me for the time/effort to re-locate.
- The full re-location benefit **must be provided prior to the confirmed start date**.
- I **will NOT** accept a reimbursement based re-location package.
- I am happy to come onsite (at client expense (paid up front)) for training/orientation etc.
\pagebreak
## Rate Schedule (compensation expectations)
### Fully remote roles
I have a **very strong** preference for fully remote roles.
I am open to (at the absolute bottom of my range):
- **{{CandidateRateSheetRemoteW2HourlyMinimum}}** per hour(w2)
- **{{CandidateRateSheetRemoteW2AnnualMinimum}}** annually
- **{{CandidateRateSheetRemote1099HourlyMinimum}}** per hour (1099/corp to corp)
I have a strong preference for roles that are :
- **{{CandidateRateSheetRemoteW2HourlyPrefer}}** per hour(w2) or more
- **{{CandidateRateSheetRemoteW2AnnualPrefer}}** annually or more
- **{{CandidateRateSheetRemote1099HourlyPrefer}}** per hour (1099/corp to corp) or more
### On-site/hybrid roles
- **{{CandidateRateSheetRemoteW2HourlyPrefer}}** per hour(w2) or more
- **{{CandidateRateSheetRemoteW2AnnualPrefer}}** annually or more
- **{{CandidateRateSheetRemote1099HourlyPrefer}}** per hour (1099/corp to corp) or more
In regards to compensation type, I am open to:
- w2
- corp to corp (I have my own LLC)
- 1099
If you have a rate for any of the compensation options above, send them all. I will pick which one works best for my situation and the opportunity.
If it's a different rate with/without benefits, send both.
If the above is in alignment with this opportunity, please feel free to send me an RTR with the best rate you can offer.
\pagebreak
## Details needed for submission
### My resume
[Download Candidate resume(format)](https://some.resume.somewhere/some-Resume.pdf)
I am happy to discuss and make edits to the resume content specific to the opportunity if you feel they are needed.
### Candidate details
Here are my complete candidate details for submission to the role.
| Question | Answer |
|---------------------------------------|-------------------------------------|
| Full name | {{CandidateName}} |
| E-mail address | {{CandiateEmail}} |
| Phone number | {{CandidatePhone}} |
| Preferred form of contact | {{CandidatePreferredContactMethod}} |
| Work authorization | {{CandidateWorkAuthorization}} |
| Are you employed presently? | {{CandidateEmploymentStatus}} |
| Current location | {{CandidateCurrentLocation}} |
| Current timezone | {{CandidateCurrentTimezone}} |
| Timezones I can work in | {{CandidateWorkableTimezones}} |
| Availability to interview | {{CandidateInterviewAvailability}} |
| Availability to start | {{CandidateStartAvailability}} |
| Highest Education | {{CandidateHighestEducation}} |
| Graduated Year | {{CandidateGraduationYear}} |
| Name of school | {{CandidateSchoolName}} |
| Location of school | {{CandidateSchoolLocation}} |
| Linkedin Profile | ({{CandidateLinkedin}}) |
| Github Profile | ({{CandidateGithub}}) |
| Last project | {{CandidateLastProject}} |
| DOB | {{CandidateDOB}} |
| Total IT/career experience | {{CandidateTotalExperience}} |
| Open to in-office/hybrid/remote | Yes |
| Any trips planned in next six months? | No |

View File

@@ -1,4 +0,0 @@
{{CandidateName}}
=====
{{CandidateOneLinerSummary}}

View File

@@ -1,6 +0,0 @@
{{CandidateName}}
=====
{{CandidateOneLinerSummary}}
[ [Github Profile]({{CandidateGithub}}) ] . [ [Linkedin Profile]({{CandidateLinkedin}}) ] . [ {{CandidateEmail}} ] . [ {{CandidatePhone}} ] . [ {{CandidateLocation}} ]

View File

@@ -1,3 +0,0 @@
- Stuff
- Things
- Amazing project!

View File

@@ -1,3 +0,0 @@
- Stuff
- Things
- Amazing project!

View File

@@ -1,2 +0,0 @@
- Cool project 1.
- cool project 2.

View File

@@ -1,2 +0,0 @@
skill1|1 years|skill,1,details,and,stuff
skill2|2 years|skill2,2,details,and,stuff,and,things
1 skill1 1 years skill,1,details,and,stuff
2 skill2 2 years skill2,2,details,and,stuff,and,things

View File

@@ -1,2 +0,0 @@
job1,Title of job 1,January 1 1970 - January 6 1980
job2,Title of Job 2,January 1 1970 - January 6 1980
1 job1 Title of job 1 January 1 1970 - January 6 1980
2 job2 Title of Job 2 January 1 1970 - January 6 1980

View File

@@ -1,121 +0,0 @@
# First Middle Last Candidate Information Sheet
## Introduction
Hello,
I apologize for the form letter response.
I receive a high volume of recruiter emails every day and I've found this letter to be the most efficient way to
handle the high volume of emails and reduce back and forth emails/texts/calls.
If you have any questions/comments/concerns not covered by this document, please let me know via e-mail and I'm happy to address them!
If you ask me something answered in this document, I will not respond and will not move forward with the opportunity, so please read it in detail!
## Re: share my ID over email
I WILL NOT share my (full or redacted) photo ID over email or any other electronic written
communication. If that is "required" then I have no interest in moving forward with this opportunity.
I am happy to get on a teams/zoom/google meet etc call and show my ID.
## Re: professional references
I am happy to provide professional references once an interview with the end client/customer/hiring manager/team has been scheduled. I will NOT provide references up front. If that is "required" then I have no interest in moving forward with this opportunity.
## Re: relocation
if the role is not based in **Place 1/Place 2** or **Other Location** I will need to re-locate
| Question | Answer |
|-------------------------------------------|--------|
| Am I open to relocation? | Yes |
| Am I willing to re-locate at own expense? | No |
| Am I open to up to 100% travel | Yes |
Please be aware that:
- I will **only re-locate at the employer expense**.
- I will need **two weeks of time** to re-locate.
- The net amount of the re-location benefit **MUST be at least 1,987.11** to fully compensate me for the time/effort to re-locate.
- The full re-location benefit **must be provided prior to the confirmed start date**.
- I **will NOT** accept a reimbursement based re-location package.
- I am happy to come onsite (at client expense (paid up front)) for training/orientation etc.
\pagebreak
## Rate Schedule (compensation expectations)
### Fully remote roles
I have a **very strong** preference for fully remote roles.
I am open to (at the absolute bottom of my range):
- **$12.34** per hour(w2)
- **$123,456.00** annually
- **$56.78** per hour (1099/corp to corp)
I have a strong preference for roles that are :
- **$34.56** per hour(w2) or more
- **$321,987.00** annually or more
- **$78.90** per hour (1099/corp to corp) or more
### On-site/hybrid roles
- **$34.56** per hour(w2) or more
- **$321,987.00** annually or more
- **$78.90** per hour (1099/corp to corp) or more
In regards to compensation type, I am open to:
- w2
- corp to corp (I have my own LLC)
- 1099
If you have a rate for any of the compensation options above, send them all. I will pick which one works best for my situation and the opportunity.
If it's a different rate with/without benefits, send both.
If the above is in alignment with this opportunity, please feel free to send me an RTR with the best rate you can offer.
\pagebreak
## Details needed for submission
### My resume
[Download Candidate resume(format)](https://some.resume.somewhere/some-Resume.pdf)
I am happy to discuss and make edits to the resume content specific to the opportunity if you feel they are needed.
### Candidate details
Here are my complete candidate details for submission to the role.
| Question | Answer |
|---------------------------------------|-------------------------------------|
| Full name | First Middle Last |
| E-mail address | |
| Phone number | 1 123 456 7890 |
| Preferred form of contact | Email will get the fastest response. |
| Work authorization | US Citizen |
| Are you employed presently? | Not currently employed |
| Current location | City,State,Country etc |
| Current timezone | Timezone |
| Timezones I can work in | Timezones |
| Availability to interview | Sometime |
| Availability to start | Sometime |
| Highest Education | Some education level |
| Graduated Year | Graduation year |
| Name of school | School name |
| Location of school | School location |
| Linkedin Profile | (https://www.linkedin.com/) |
| Github Profile | (https://www.github.com/) |
| Last project | Last project |
| DOB | MM/DD |
| Total IT/career experience | epoch |
| Open to in-office/hybrid/remote | Yes |
| Any trips planned in next six months? | No |

View File

@@ -1 +0,0 @@
This directory is used by the build process. Ignore it.

View File

@@ -1 +0,0 @@
Working directory for the pipeline. Don't use.

View File

@@ -1 +0,0 @@
This directory is used by the build process. Ignore it.

View File

@@ -1 +0,0 @@
Working directory for the pipeline. Don't use.

View File

@@ -1,14 +0,0 @@
title: "{{CandidateName}} Candidate Information Sheet"
titlepage: true
titlepage-logo: "{{CandidateLogo}}"
toc: true
toc-own-page: true
date: \today
header-left: "\\hspace{1cm}"
header-center: "\\leftmark"
header-right: "Page \\thepage"
footer-left: "{{CandidateName}}"
footer-center: "{{CandidateTagline}}"
footer-right: "[Source code]({{SourceCode}})"
urlcolor: {{URLCOLOR}}
page-background: "{{PAGEBACKGROUND}}"

View File

@@ -1,7 +0,0 @@
title: "{{CandidateName}} Resume"
header-left: "\\hspace{1cm}"
header-center: "\\leftmark"
header-right: "Page \\thepage"
footer-left: "{{CandidateName}}"
urlcolor: {{URLCOLOR}}
page-background: "{{PAGEBACKGROUND}}"

View File

@@ -1,12 +0,0 @@
title: "{{CandidateName}} Resume"
titlepage: true
titlepage-logo: "{{CandidateLogo}}"
date: \today
header-left: "\\hspace{1cm}"
header-center: "\\leftmark"
header-right: "Page \\thepage"
footer-left: "{{CandidateName}}"
footer-center: "{{CandidateTagline}}"
footer-right: "[Source code]({{SourceCode}})"
urlcolor: {{URLCOLOR}}
page-background: "{{PAGEBACKGROUND}}"

View File

@@ -1,268 +0,0 @@
#!/usr/bin/env bash
# This is a demo used for testing the build pipeline end to end in a self contained way.
# It's only used by developers of this repository for testing/validating changes.
# Your client repository has a build-pipeline-client.sh script and it uses
# build-pipeline-server.sh, not this script.
###################################################
# Modify these values to suit
###################################################
########################
# Contact info
########################
export CandidateName="First Middle Last"
export CandidatePhone="1 123 456 7890"
export CandidateLocation="Place 1/Place 2"
export CandidateEmail="candidate@domain.com"
########################
# Profile information
########################
export CandidateOneLineSummary="Super awesome and stuff."
export CandidateLinkedin="https://www.linkedin.com/"
export CandidateGithub="https://www.github.com/"
export CandidateTagline="Your.Tagline.Here."
########################
# Formatting options
########################
export CandidateLogo=""
export SourceCode="https://git.knownelement.com/reachableceo/MarkdownResume-Pipeline"
export URLCOLOR="blue"
export PAGEBACKGROUND="./background3.pdf"
##########################
# Candidate info sheet
##########################
export CandidatePreferredContactMethod="Email will get the fastest response."
export CandidateWorkAuthorization="US Citizen"
export CandidateEmploymentStatus="Not currently employed"
export CandidateCurrentLocation="City,State,Country etc"
export CandidateCurrentTimezone="Timezone"
export CandidateWorkableTimezones="Timezones"
export CandidateInterviewAvailability="Sometime"
export CandidateStartAvailability="Sometime"
export CandidateHighestEducation="Some education level"
export CandidateGraduationYear="Graduation year"
export CandidateSchoolName="School name"
export CandidateSchoolLocation="School location"
export CandidateLastProject="Last project"
export CandidateDOB="MM/DD"
export CandidateTotalExperience="epoch"
########################
#Compensation targets
########################
export CandidateRelocationNetMinimumAmount="1,987.11"
export CandidateRateSheetRemoteW2HourlyMinimum="\$12.34"
export CandidateRateSheetRemoteW2AnnualMinimum="\$123,456.00"
export CandidateRateSheetRemote1099HourlyMinimum="\$56.78"
export CandidateRateSheetRemoteW2HourlyPrefer="\$34.56"
export CandidateRateSheetRemoteW2AnnualPrefer="\$321,987.00"
export CandidateRateSheetRemote1099HourlyPrefer="\$78.90"
####################################################
#DO NOT CHANGE ANYTHING BELOW THIS LINE
####################################################
############################################################
# Setup globals
############################################################
readonly MO_PATH="bash ../vendor/git.knownelement.com/ExternalVendorCode/mo/mo"
readonly BUILD_OUTPUT_DIR="../build-output"
readonly BUILD_TEMP_DIR="../build-temp"
readonly BUILDYAML_JOBBOARD="$BUILD_TEMP_DIR/JobBoard.yml"
readonly BUILDYAML_CLIENTSUBMISSION="$BUILD_TEMP_DIR/ClientSubmission.yml"
readonly BUILDYAML_CANDIDATEINFOSHEET="$BUILD_TEMP_DIR/CandidateInfoSheet.yml"
CandidateInfoSheetMarkdownOutputFile="$BUILD_OUTPUT_DIR/CandidateInfoSheet.md"
CandidateInfoSheetPDFOutputFIle="$BUILD_OUTPUT_DIR/CandidateInfoSheet.pdf"
JobBoardMarkdownOutputFile="$BUILD_OUTPUT_DIR/job-board/Resume.md"
JobBoardPDFOutputFile="$BUILD_OUTPUT_DIR/job-board/Resume.pdf"
JobBoardMSWordOutputFile="$BUILD_OUTPUT_DIR/job-board/Resume.doc"
ClientSubmissionMarkdownOutputFile="$BUILD_OUTPUT_DIR/client-submission/Resume.md"
ClientSubmissionPDFOutputFile="$BUILD_OUTPUT_DIR/client-submission//Resume.pdf"
ClientSubmissionMSWordOutputFile="$BUILD_OUTPUT_DIR/client-submission/Resume.doc"
echo "Cleaning up from previous runs..."
rm $BUILDYAML_CANDIDATEINFOSHEET
rm $CandidateInfoSheetMarkdownOutputFile
rm $CandidateInfoSheetPDFOutputFIle
rm $BUILDYAML_JOBBOARD
rm $JobBoardMarkdownOutputFile
rm $JobBoardPDFOutputFile
rm $JobBoardMSWordOutputFile
rm $BUILDYAML_CLIENTSUBMISSION
rm $ClientSubmissionMarkdownOutputFile
rm $ClientSubmissionPDFOutputFile
rm $ClientSubmissionMSWordOutputFile
# Expand variables into rendered YAML files. These will be used by pandoc to create the output artifacts
$MO_PATH ./BuildTemplate-CandidateInfoSheet.yml > $BUILDYAML_CANDIDATEINFOSHEET
$MO_PATH ./BuildTemplate-JobBoard.yml > $BUILDYAML_JOBBOARD
$MO_PATH ./BuildTemplate-ClientSubmission.yml > $BUILDYAML_CLIENTSUBMISSION
echo "Creating candidate info sheet..."
$MO_PATH ../Templates/CandidateInfoSheet/CandidateInfoSheet.md > $CandidateInfoSheetMarkdownOutputFile
pandoc \
"$CandidateInfoSheetMarkdownOutputFile" \
--template eisvogel \
--metadata-file="../build-temp/CandidateInfoSheet.yml" \
--from markdown \
--to=pdf \
--output $CandidateInfoSheetPDFOutputFIle
echo "Combining markdown files into single input file for pandoc..."
# Create contact info md file
$MO_PATH ../Templates/ContactInfo/ContactInfo-JobBoard.md > $BUILD_TEMP_DIR/ContactInfo-JobBoard.md
$MO_PATH ../Templates/ContactInfo/ContactInfo-ClientSubmit.md > $BUILD_TEMP_DIR/ContactInfo-ClientSubmit.md
#Pull in contact info
cat $BUILD_TEMP_DIR/ContactInfo-JobBoard.md >> $JobBoardMarkdownOutputFile
echo " " >> $JobBoardMarkdownOutputFile
cat $BUILD_TEMP_DIR/ContactInfo-ClientSubmit.md >> $ClientSubmissionMarkdownOutputFile
echo " " >> $ClientSubmissionMarkdownOutputFile
echo "## Career Highlights" >> $JobBoardMarkdownOutputFile
echo "## Career Highlights" >> $ClientSubmissionMarkdownOutputFile
cat ../Templates/SkillsAndProjects/Projects.md >> $JobBoardMarkdownOutputFile
echo "\pagebreak" >> $JobBoardMarkdownOutputFile
cat ../Templates/SkillsAndProjects/Projects.md >> $ClientSubmissionMarkdownOutputFile
echo "\pagebreak" >> $ClientSubmissionMarkdownOutputFile
echo " " >> $JobBoardMarkdownOutputFile
echo "## Employment History" >> $JobBoardMarkdownOutputFile
echo " " >> $JobBoardMarkdownOutputFile
echo " " >> $ClientSubmissionMarkdownOutputFile
echo "## Employment History" >> $ClientSubmissionMarkdownOutputFile
echo " " >> $ClientSubmissionMarkdownOutputFile
#And here we do some magic...
#Pull in :
# employer
# title
# start/end dates of employment
# long form position summary data from each position
IFS=$'\n\t'
for position in \
$(cat ../Templates/WorkHistory/WorkHistory.csv); do
COMPANY="$(echo $position|awk -F ',' '{print $1}')"
TITLE="$(echo $position|awk -F ',' '{print $2}')"
DATEOFEMPLOY="$(echo $position|awk -F ',' '{print $3}')"
echo " " >> "$JobBoardMarkdownOutputFile"
echo "**$COMPANY | $TITLE | $DATEOFEMPLOY**" >> $JobBoardMarkdownOutputFile
echo " " >> "$JobBoardMarkdownOutputFile"
echo "**$COMPANY | $TITLE | $DATEOFEMPLOY**" >> $ClientSubmissionMarkdownOutputFile
echo " " >> "$ClientSubmissionMarkdownOutputFile"
echo " " >> "$JobBoardMarkdownOutputFile"
cat ../Templates/JobHistoryDetails/$COMPANY.md >> "$JobBoardMarkdownOutputFile"
echo " " >> "$JobBoardMarkdownOutputFile"
cat ../Templates/JobHistoryDetails/$COMPANY.md >> "$ClientSubmissionMarkdownOutputFile"
echo " " >> "$ClientSubmissionMarkdownOutputFile"
done
#Pull in my skills and generate a beautiful table.
echo "\pagebreak" >> $JobBoardMarkdownOutputFile
echo " " >> "$JobBoardMarkdownOutputFile"
echo "## Skills" >> "$JobBoardMarkdownOutputFile"
echo " " >> "$JobBoardMarkdownOutputFile"
echo "\pagebreak" >> $ClientSubmissionMarkdownOutputFile
echo " " >> "$ClientSubmissionMarkdownOutputFile"
echo "## Skills" >> "$ClientSubmissionMarkdownOutputFile"
echo " " >> "$ClientSubmissionMarkdownOutputFile"
#Table heading
echo "|Skill|Experience|Skill Details|" >> $JobBoardMarkdownOutputFile
echo "|---|---|---|" >> $JobBoardMarkdownOutputFile
echo "|Skill|Experience|Skill Details|" >> $ClientSubmissionMarkdownOutputFile
echo "|---|---|---|" >> $ClientSubmissionMarkdownOutputFile
#Table rows
IFS=$'\n\t'
for skill in \
$(cat ../Templates/SkillsAndProjects/Skills.csv); do
SKILL_NAME="$(echo $skill|awk -F '|' '{print $1}')"
SKILL_YEARS="$(echo $skill|awk -F '|' '{print $2}')"
SKILL_DETAIL="$(echo $skill|awk -F '|' '{print $3}')"
echo "|**$SKILL_NAME**|$SKILL_YEARS|$SKILL_DETAIL|" >> $JobBoardMarkdownOutputFile
echo "|**$SKILL_NAME**|$SKILL_YEARS|$SKILL_DETAIL|" >> $ClientSubmissionMarkdownOutputFile
done
unset IFS
echo "Generating PDF output for job board version..."
pandoc \
"$JobBoardMarkdownOutputFile" \
--template eisvogel \
--metadata-file="../build-temp/JobBoard.yml" \
--from markdown \
--to=pdf \
--output $JobBoardPDFOutputFile
echo "Generating MSWord output for job board version..."
pandoc \
"$JobBoardMarkdownOutputFile" \
--metadata-file="../build-temp/JobBoard.yml" \
--from markdown \
--to=docx \
--reference-doc=resume-docx-reference.docx \
--output $JobBoardMSWordOutputFile
echo "Generating PDF output for client submission version..."
pandoc \
"$ClientSubmissionMarkdownOutputFile" \
--template eisvogel \
--metadata-file="../build-temp/ClientSubmission.yml" \
--from markdown \
--to=pdf \
--output $ClientSubmissionPDFOutputFile
echo "Generating MSWord output for client submission version..."
pandoc \
"$ClientSubmissionMarkdownOutputFile" \
--metadata-file="../build-temp/ClientSubmission.yml" \
--from markdown \
--to=docx \
--reference-doc=resume-docx-reference.docx \
--output $ClientSubmissionMSWordOutputFile

View File

@@ -0,0 +1,156 @@
#!/usr/bin/env bash
#####################################################################################################
#Markdown to PDF/MSWord Resumek and candidate info sheet
#####################################################################################################
# Expand variables into rendered YAML files. These will be used by pandoc to create the output artifacts
$MO_PATH $PipelineClientWorkingDir/build/BuildTemplate-CandidateInfoSheet.yml > $BUILDYAML_CANDIDATEINFOSHEET
$MO_PATH $PipelineClientWorkingDir/build/BuildTemplate-JobBoard.yml > $BUILDYAML_JOBBOARD
$MO_PATH $PipelineClientWorkingDir/build/BuildTemplate-ClientSubmission.yml > $BUILDYAML_CLIENTSUBMISSION
echo "Creating candidate info sheet..."
$MO_PATH $PipelineClientWorkingDir/Templates/MarkdownResume/CandidateInfoSheet/CandidateInfoSheet.md > "$CandidateInfoSheetMarkdownOutputFile"
pandoc \
"$CandidateInfoSheetMarkdownOutputFile" \
--template eisvogel \
--metadata-file="$PipelineClientWorkingDir/build-temp/MarkdownResume/CandidateInfoSheet.yml" \
--from markdown \
--to=pdf \
--output $CandidateInfoSheetPDFOutputFile
echo "Combining markdown files into single input file for pandoc..."
# Create contact info md file
$MO_PATH "$PipelineClientWorkingDir/Templates/MarkdownResume/ContactInfo/ContactInfo-JobBoard.md" > "$BUILD_TEMP_DIR/ContactInfo-JobBoard.md"
$MO_PATH "$PipelineClientWorkingDir/Templates/MarkdownResume/ContactInfo/ContactInfo-ClientSubmit.md" > "$BUILD_TEMP_DIR/ContactInfo-ClientSubmit.md"
#Pull in contact info
cat "$BUILD_TEMP_DIR/ContactInfo-JobBoard.md" >> "$JobBoardMarkdownOutputFile"
echo " " >> "$JobBoardMarkdownOutputFile"
cat "$BUILD_TEMP_DIR/ContactInfo-ClientSubmit.md" >> "$ClientSubmissionMarkdownOutputFile"
echo " " >> "$ClientSubmissionMarkdownOutputFile"
echo "## Career Highlights" >> "$JobBoardMarkdownOutputFile"
echo "## Career Highlights" >> "$ClientSubmissionMarkdownOutputFile"
cat "$PipelineClientWorkingDir/Templates/MarkdownResume/SkillsAndProjects/Projects.md" >> "$JobBoardMarkdownOutputFile"
echo "\pagebreak" >> "$JobBoardMarkdownOutputFile"
cat "$PipelineClientWorkingDir/Templates/MarkdownResume/SkillsAndProjects/Projects.md" >> "$ClientSubmissionMarkdownOutputFile"
echo "\pagebreak" >> "$ClientSubmissionMarkdownOutputFile"
echo " " >> "$JobBoardMarkdownOutputFile"
echo "## Employment History" >> "$JobBoardMarkdownOutputFile"
echo " " >> "$JobBoardMarkdownOutputFile"
echo " " >> "$ClientSubmissionMarkdownOutputFile"
echo "## Employment History" >> "$ClientSubmissionMarkdownOutputFile"
echo " " >> "$ClientSubmissionMarkdownOutputFile"
#And here we do some magic...
#Pull in :
# employer
# title
# start/end dates of employment
# long form position summary data from each position
IFS=$'\n\t'
for position in \
$(cat "$PipelineClientWorkingDir/Templates/MarkdownResume/WorkHistory/WorkHistory.csv"); do
COMPANY="$(echo $position|awk -F ',' '{print $1}')"
TITLE="$(echo $position|awk -F ',' '{print $2}')"
DATEOFEMPLOY="$(echo $position|awk -F ',' '{print $3}')"
echo " " >> "$JobBoardMarkdownOutputFile"
echo "**$COMPANY | $TITLE | $DATEOFEMPLOY**" >> "$JobBoardMarkdownOutputFile"
echo " " >> "$JobBoardMarkdownOutputFile"
echo "**$COMPANY | $TITLE | $DATEOFEMPLOY**" >> "$ClientSubmissionMarkdownOutputFile"
echo " " >> "$ClientSubmissionMarkdownOutputFile"
echo " " >> "$JobBoardMarkdownOutputFile"
cat "$PipelineClientWorkingDir/Templates/MarkdownResume/JobHistoryDetails/$COMPANY.md" >> "$JobBoardMarkdownOutputFile"
echo " " >> "$JobBoardMarkdownOutputFile"
cat "$PipelineClientWorkingDir/Templates/MarkdownResume/JobHistoryDetails/$COMPANY.md" >> "$ClientSubmissionMarkdownOutputFile"
echo " " >> "$ClientSubmissionMarkdownOutputFile"
done
#Pull in my skills and generate a beautiful table.
echo "\pagebreak" >> "$JobBoardMarkdownOutputFile"
echo " " >> "$JobBoardMarkdownOutputFile"
echo "## Skills" >> "$JobBoardMarkdownOutputFile"
echo " " >> "$JobBoardMarkdownOutputFile"
echo "\pagebreak" >> "$ClientSubmissionMarkdownOutputFile"
echo " " >> "$ClientSubmissionMarkdownOutputFile"
echo "## Skills" >> "$ClientSubmissionMarkdownOutputFile"
echo " " >> "$ClientSubmissionMarkdownOutputFile"
#Table heading
echo "|Skill|Experience|Skill Details|" >> "$JobBoardMarkdownOutputFile"
echo "|---|---|---|" >> "$JobBoardMarkdownOutputFile"
echo "|Skill|Experience|Skill Details|" >> "$ClientSubmissionMarkdownOutputFile"
echo "|---|---|---|" >> "$ClientSubmissionMarkdownOutputFile"
#Table rows
IFS=$'\n\t'
for skill in \
$(cat "$PipelineClientWorkingDir/Templates/MarkdownResume/SkillsAndProjects/Skills.csv"); do
SKILL_NAME="$(echo $skill|awk -F '|' '{print $1}')"
SKILL_YEARS="$(echo $skill|awk -F '|' '{print $2}')"
SKILL_DETAIL="$(echo $skill|awk -F '|' '{print $3}')"
echo "|**$SKILL_NAME**|$SKILL_YEARS|$SKILL_DETAIL|" >> "$JobBoardMarkdownOutputFile"
echo "|**$SKILL_NAME**|$SKILL_YEARS|$SKILL_DETAIL|" >> "$ClientSubmissionMarkdownOutputFile"
done
unset IFS
echo "Generating PDF output for job board version..."
pandoc \
"$JobBoardMarkdownOutputFile" \
--template eisvogel \
--metadata-file="$PipelineClientWorkingDir/build-temp/MarkdownResume/JobBoard.yml" \
--from markdown \
--to=pdf \
--output "$JobBoardPDFOutputFile"
echo "Generating MSWord output for job board version..."
pandoc \
"$JobBoardMarkdownOutputFile" \
--metadata-file="$PipelineClientWorkingDir/build-temp/MarkdownResume/JobBoard.yml" \
--from markdown \
--to=docx \
--reference-doc="$PipelineClientWorkingDir/build/resume-docx-reference.docx" \
--output "$JobBoardMSWordOutputFile"
echo "Generating PDF output for client submission version..."
pandoc \
"$ClientSubmissionMarkdownOutputFile" \
--template eisvogel \
--metadata-file="$PipelineClientWorkingDir/build-temp/MarkdownResume/ClientSubmission.yml" \
--from markdown \
--to=pdf \
--output "$ClientSubmissionPDFOutputFile"
echo "Generating MSWord output for client submission version..."
pandoc \
"$ClientSubmissionMarkdownOutputFile" \
--metadata-file="$PipelineClientWorkingDir/build-temp/MarkdownResume/ClientSubmission.yml" \
--from markdown \
--to=docx \
--reference-doc="$PipelineClientWorkingDir/build/resume-docx-reference.docx" \
--output "$ClientSubmissionMSWordOutputFile"

View File

@@ -1,168 +0,0 @@
#!/usr/bin/env bash
echo "Cleaning up from previous runs..."
rm $BUILDYAML_CANDIDATEINFOSHEET
rm $CandidateInfoSheetMarkdownOutputFile
rm $CandidateInfoSheetPDFOutputFIle
rm $BUILDYAML_JOBBOARD
rm $JobBoardMarkdownOutputFile
rm $JobBoardPDFOutputFile
rm $JobBoardMSWordOutputFile
rm $BUILDYAML_CLIENTSUBMISSION
rm $ClientSubmissionMarkdownOutputFile
rm $ClientSubmissionPDFOutputFile
rm $ClientSubmissionMSWordOutputFile
# Expand variables into rendered YAML files. These will be used by pandoc to create the output artifacts
$MO_PATH $PipelineClientWorkingDir/build/BuildTemplate-CandidateInfoSheet.yml > $BUILDYAML_CANDIDATEINFOSHEET
$MO_PATH $PipelineClientWorkingDir/build/BuildTemplate-JobBoard.yml > $BUILDYAML_JOBBOARD
$MO_PATH $PipelineClientWorkingDir/build/BuildTemplate-ClientSubmission.yml > $BUILDYAML_CLIENTSUBMISSION
echo "Creating candidate info sheet..."
$MO_PATH $PipelineClientWorkingDir/Templates/CandidateInfoSheet/CandidateInfoSheet.md > $CandidateInfoSheetMarkdownOutputFile
pandoc \
"$CandidateInfoSheetMarkdownOutputFile" \
--template eisvogel \
--metadata-file="$PipelineClientWorkingDir/build-temp/CandidateInfoSheet.yml" \
--from markdown \
--to=pdf \
--output $CandidateInfoSheetPDFOutputFIle
echo "Combining markdown files into single input file for pandoc..."
# Create contact info md file
$MO_PATH $PipelineClientWorkingDir/Templates/ContactInfo/ContactInfo-JobBoard.md > $BUILD_TEMP_DIR/ContactInfo-JobBoard.md
$MO_PATH $PipelineClientWorkingDir/Templates/ContactInfo/ContactInfo-ClientSubmit.md > $BUILD_TEMP_DIR/ContactInfo-ClientSubmit.md
#Pull in contact info
cat $BUILD_TEMP_DIR/ContactInfo-JobBoard.md >> $JobBoardMarkdownOutputFile
echo " " >> $JobBoardMarkdownOutputFile
cat $BUILD_TEMP_DIR/ContactInfo-ClientSubmit.md >> $ClientSubmissionMarkdownOutputFile
echo " " >> $ClientSubmissionMarkdownOutputFile
echo "## Career Highlights" >> $JobBoardMarkdownOutputFile
echo "## Career Highlights" >> $ClientSubmissionMarkdownOutputFile
cat $PipelineClientWorkingDir/Templates/SkillsAndProjects/Projects.md >> $JobBoardMarkdownOutputFile
echo "\pagebreak" >> $JobBoardMarkdownOutputFile
cat $PipelineClientWorkingDir/Templates/SkillsAndProjects/Projects.md >> $ClientSubmissionMarkdownOutputFile
echo "\pagebreak" >> $ClientSubmissionMarkdownOutputFile
echo " " >> $JobBoardMarkdownOutputFile
echo "## Employment History" >> $JobBoardMarkdownOutputFile
echo " " >> $JobBoardMarkdownOutputFile
echo " " >> $ClientSubmissionMarkdownOutputFile
echo "## Employment History" >> $ClientSubmissionMarkdownOutputFile
echo " " >> $ClientSubmissionMarkdownOutputFile
#And here we do some magic...
#Pull in :
# employer
# title
# start/end dates of employment
# long form position summary data from each position
IFS=$'\n\t'
for position in \
$(cat $PipelineClientWorkingDir/Templates/WorkHistory/WorkHistory.csv); do
COMPANY="$(echo $position|awk -F ',' '{print $1}')"
TITLE="$(echo $position|awk -F ',' '{print $2}')"
DATEOFEMPLOY="$(echo $position|awk -F ',' '{print $3}')"
echo " " >> "$JobBoardMarkdownOutputFile"
echo "**$COMPANY | $TITLE | $DATEOFEMPLOY**" >> $JobBoardMarkdownOutputFile
echo " " >> "$JobBoardMarkdownOutputFile"
echo "**$COMPANY | $TITLE | $DATEOFEMPLOY**" >> $ClientSubmissionMarkdownOutputFile
echo " " >> "$ClientSubmissionMarkdownOutputFile"
echo " " >> "$JobBoardMarkdownOutputFile"
cat $PipelineClientWorkingDir/Templates/JobHistoryDetails/$COMPANY.md >> "$JobBoardMarkdownOutputFile"
echo " " >> "$JobBoardMarkdownOutputFile"
cat $PipelineClientWorkingDir/Templates/JobHistoryDetails/$COMPANY.md >> "$ClientSubmissionMarkdownOutputFile"
echo " " >> "$ClientSubmissionMarkdownOutputFile"
done
#Pull in my skills and generate a beautiful table.
echo "\pagebreak" >> $JobBoardMarkdownOutputFile
echo " " >> "$JobBoardMarkdownOutputFile"
echo "## Skills" >> "$JobBoardMarkdownOutputFile"
echo " " >> "$JobBoardMarkdownOutputFile"
echo "\pagebreak" >> $ClientSubmissionMarkdownOutputFile
echo " " >> "$ClientSubmissionMarkdownOutputFile"
echo "## Skills" >> "$ClientSubmissionMarkdownOutputFile"
echo " " >> "$ClientSubmissionMarkdownOutputFile"
#Table heading
echo "|Skill|Experience|Skill Details|" >> $JobBoardMarkdownOutputFile
echo "|---|---|---|" >> $JobBoardMarkdownOutputFile
echo "|Skill|Experience|Skill Details|" >> $ClientSubmissionMarkdownOutputFile
echo "|---|---|---|" >> $ClientSubmissionMarkdownOutputFile
#Table rows
IFS=$'\n\t'
for skill in \
$(cat $PipelineClientWorkingDir/Templates/SkillsAndProjects/Skills.csv); do
SKILL_NAME="$(echo $skill|awk -F '|' '{print $1}')"
SKILL_YEARS="$(echo $skill|awk -F '|' '{print $2}')"
SKILL_DETAIL="$(echo $skill|awk -F '|' '{print $3}')"
echo "|**$SKILL_NAME**|$SKILL_YEARS|$SKILL_DETAIL|" >> $JobBoardMarkdownOutputFile
echo "|**$SKILL_NAME**|$SKILL_YEARS|$SKILL_DETAIL|" >> $ClientSubmissionMarkdownOutputFile
done
unset IFS
echo "Generating PDF output for job board version..."
pandoc \
"$JobBoardMarkdownOutputFile" \
--template eisvogel \
--metadata-file="$PipelineClientWorkingDir/build-temp/JobBoard.yml" \
--from markdown \
--to=pdf \
--output $JobBoardPDFOutputFile
echo "Generating MSWord output for job board version..."
pandoc \
"$JobBoardMarkdownOutputFile" \
--metadata-file="$PipelineClientWorkingDir/build-temp/JobBoard.yml" \
--from markdown \
--to=docx \
--reference-doc="$PipelineClientWorkingDir/build/resume-docx-reference.docx" \
--output $JobBoardMSWordOutputFile
echo "Generating PDF output for client submission version..."
pandoc \
"$ClientSubmissionMarkdownOutputFile" \
--template eisvogel \
--metadata-file="$PipelineClientWorkingDir/build-temp/ClientSubmission.yml" \
--from markdown \
--to=pdf \
--output $ClientSubmissionPDFOutputFile
echo "Generating MSWord output for client submission version..."
pandoc \
"$ClientSubmissionMarkdownOutputFile" \
--metadata-file="$PipelineClientWorkingDir/build-temp/ClientSubmission.yml" \
--from markdown \
--to=docx \
--reference-doc="$PipelineClientWorkingDir/build/resume-docx-reference.docx" \
--output $ClientSubmissionMSWordOutputFile