diff --git a/assets/data/education.json b/assets/data/education.json index e69de29..d6c43c9 100644 --- a/assets/data/education.json +++ b/assets/data/education.json @@ -0,0 +1,16 @@ +{ + "id": "developer-training", + "title": "DEVELOPER_TRAINING.EXE", + "classification": "Concepteur Développeur d'Applications (RNCP Level BAC+4)", + "objective": "Intensive full-stack development program focusing on modern web technologies including TypeScript, Node.js, and contemporary development frameworks. Building comprehensive skills in both frontend and backend development.", + "timeline": "École O'clock | January 2025 - October 2025", + "techStack": [ + "TYPESCRIPT", + "NODE.JS", + "FULL_STACK", + "WEB_FRAMEWORKS" + ], + "status": "current", + "statusLabel": "ACTIVE | IN_PROGRESS", + "isCurrent": true +} diff --git a/assets/data/experiences.json b/assets/data/experiences.json index e69de29..402004e 100644 --- a/assets/data/experiences.json +++ b/assets/data/experiences.json @@ -0,0 +1,42 @@ +[ + { + "id": "senior-specialist", + "title": "PYTHON_API_SPECIALIST.EXE", + "classification": "Python & Django API/RPA Specialist", + "objective": "Specialized in Python/Django development for API automation and RPA processes. Led technical interventions for complex enterprise HR system integrations, developing robust solutions that bridge business requirements with technical implementation.", + "timeline": "UKG | January 2024 - January 2025", + "techStack": ["PYTHON", "DJANGO", "API", "RPA"], + "status": "completed", + "statusLabel": "ARCHIVED | SME_SPECIALIST" + }, + { + "id": "specialist-ii", + "title": "SYSTEMS_INTEGRATION_SME.EXE", + "classification": "Enterprise Systems Integration", + "objective": "Subject Matter Expert (SME) for enterprise HRSD connectors and system integrations. Specialized in complex technical challenges involving API development, RPA automation, and SFTP protocols. Provided BI support and data visualization solutions.", + "timeline": "UKG | January 2023 - January 2024", + "techStack": ["PYTHON", "DJANGO", "API", "RPA"], + "status": "completed", + "statusLabel": "ARCHIVED | SME_SPECIALIST" + }, + { + "id": "specialist", + "title": "SOLUTION_SUPPORT.EXE", + "classification": "B2B Solution Support", + "objective": "Delivered high-level technical support for VIP business clients using HRSD solutions. Developed expertise in SaaS platforms and enterprise decision-making processes while managing critical client relationships.", + "timeline": "UKG | October 2021 - January 2023", + "techStack": ["SAAS", "HRSD", "CLIENT_MGMT"], + "status": "completed", + "statusLabel": "ARCHIVED | VIP_TIER" + }, + { + "id": "technician", + "title": "IT_TECHNICIAN.EXE", + "classification": "Information Technology Technician", + "objective": "Provided VIP end-user support, managed hardware/software deployments, and implemented networking and information security practices in a mission-critical environment.", + "timeline": "Armée de Terre | July 2018 - December 2018", + "techStack": ["NETWORKING", "SECURITY", "DEPLOYMENT"], + "status": "completed", + "statusLabel": "ARCHIVED | MILITARY" + } +] diff --git a/assets/data/interests.json b/assets/data/interests.json new file mode 100644 index 0000000..e6da93b --- /dev/null +++ b/assets/data/interests.json @@ -0,0 +1,14 @@ +[ + { + "label": "READINGS", + "value": "Science Fiction, Philosophy, Fantasy" + }, + { + "label": "INTERESTS", + "value": "Digital & Tabletop Games, Hiking, Drawing" + }, + { + "label": "PETS", + "value": "Proud Dad of 6 Guinea Pigs (You read right!)" + } +] diff --git a/assets/data/traits.json b/assets/data/traits.json index e69de29..1232ce4 100644 --- a/assets/data/traits.json +++ b/assets/data/traits.json @@ -0,0 +1,8 @@ +[ + "CURIOUS", + "PERSISTENT", + "ANALYTICAL", + "CREATIVE", + "ADAPTIVE", + "SELF-LEARNER" +] diff --git a/src/app/shared/services/data.service.ts b/src/app/shared/services/data.service.ts index fed5369..b93799a 100644 --- a/src/app/shared/services/data.service.ts +++ b/src/app/shared/services/data.service.ts @@ -19,55 +19,32 @@ export class DataService { readonly skills = this._skills.asReadonly(); constructor() { - console.log('DataService initialized'); this.loadInitialData(); } private async loadInitialData(): Promise { try { - console.log('Starting to load data...'); const [projects, skills] = await Promise.all([ this.fetchProjects(), this.fetchSkills(), ]); - console.log('Projects loaded successfully:', projects); - console.log('Skills loaded successfully:', skills); - console.log('Number of projects:', projects.length); - console.log('Number of skills:', skills.length); - this._projects.set(projects); this._skills.set(skills); - console.log('All data signals updated'); } catch (error) { console.error('Error loading data:', error); } } private async fetchProjects(): Promise { - console.log('Fetching projects from data/projects.json'); - const result = await firstValueFrom( - this.http.get('data/projects.json'), - ); - console.log('Projects HTTP request completed:', result); - return result; + return firstValueFrom(this.http.get('data/projects.json')); } private async fetchSkills(): Promise { - console.log('Fetching skills from data/skilltree.json'); const result = await firstValueFrom( - this.http.get( - 'data/skilltree.json', - ), + this.http.get('data/skilltree.json'), ); - console.log('Skills HTTP request completed:', result); - // If the JSON contains a single object instead of an array, wrap it in an array - if (result && !Array.isArray(result)) { - console.log('Converting single skill object to array'); - return [result as NeuralProfileNode]; - } - - return Array.isArray(result) ? result : []; + return [result]; } }