Gatta Ba — Full-stack Developer

IUT Portfolio - Skills Assessment

This portfolio documents my skills development during my alternance (work-study program) at Gonexa, structured according to the BUT Computer Science - Application Development track reference framework.

Core RA Track Competencies

C1 • Realize

Design, development, validation of applications

Functional Specifications

Avant

Writing short specs (tutored projects)

Après

Detailed specifications for Branding and Logs features + Azure DevOps user stories

Level 2

User Interface

Avant

Basic interface development

Après

Design Library creation, responsive pages, custom colors/branding management

Level 3

Testing & Validation

Avant

Basic manual testing

Après

Systematic functional testing of new features, production validation

Level 2

Application Evolution

Avant

No production experience

Après

Preview refactoring (Vue Class → Composition API), performance optimizations

Level 3

C2 • Optimize

Performance and efficiency improvement

Niveau 3

Situation: Admin App Optimization: parallelization with Task.WhenAll (20s → 5s loading time)

  • AC32.01 – Anticiper les résultats de diverses métriques: Analyse du temps d'exécution des requêtes de récupération des environnements dans l'App Admin et des journaux dans la page Logs.
  • AC32.02 – Profiler, analyser: Bottleneck identification via Azure Application Insights monitoring
  • AC32.03 – Choix de bibliothèques: Aspose.Total integration for multi-format conversion (PDF, Word, Excel)

Résultat: Significant response time improvement and enhanced user experience

C6 • Collaborate

Teamwork and professional communication

AC26.01 / 26.04

Regular code reviews, sprint demonstrations

Niveau 2

AC36.01

Vue 3 technical watch, team knowledge sharing

Niveau 3- (initiation)

Communication

Technical documentation on Notion, daily stand-up participation

Complementary Competencies

C3 • Administer

  • CI/CD: Azure DevOps CI/CD pipeline configuration for automated deployments
  • Sécurité: JWT authentication management, data encryption, access controls
Niveau 2

C4 • Manage (Data)

  • CompanyBranding schema design, Cosmos DB partitioning optimization
  • Analytics components development (logs, real-time metrics)
Niveau 2

C5 • Lead (Project Management)

  • Agile methodology: 4-week sprints, backlog grooming, retrospectives
  • Azure DevOps mastery (boards, pipelines), RACI documentation
  • Feature prioritization according to business needs
Niveau 2

Key Projects & Achievements

Main technical achievements

Système de Preview documentaire

Refactoring complet : Vue Class → Composition API, génération externe, intégration signatures/interactions

Vue 3C#JWT

Page de Branding personnalisé

Interface complète : color picker, upload logo, preview temps réel, intégration YouSign

Vue 3Cosmos DBBase64

Système de Logs & Analytics

Import/filtrage logs Cosmos DB, pagination server-side, recherche multi-critères

Cosmos DBAzureDesign Library

Optimisation App Admin

Parallélisation requêtes (Task.WhenAll), composant stats temps réel, amélioration UX

C#Azure DevOpsPerformance

Conversion multi-formats

Support PDF/Word/Excel via Aspose.Total, gestion licences, API conversion

Aspose.TotalC#

Gestion de Connect dans l'App

Integration dans l'App d'une partie de la configuration de Connect, outil permettant d'enregistrer ses documents sur Google Drive, SFTP ou SharePoint

Vue 3C#

SAE - Application Evolution

SAE - Internship and Work-Study Management

Development of a comprehensive platform to centralize internship and work-study offers

Durée: September 2024 - June 2025 (2 semesters)
Équipe: Team of 4: Gatta BA, Thomas BIABIANY, Rayan TAIL, Christopher BONDIER
Rôle: Full-Stack Developer - Frontend lead and API integration
Technologies:
Next.jsAngularTypeScriptNode.jsNest.jsPostgreSQLAPI RESTGit

Contexte du projet

Academic team project with 4 developers on an existing application (RAMSES) requiring complete refactoring of the Internship & Work-Study module.

Compétences mises en œuvre et acquises

C1 - Develop applications

  • Complete refactoring of existing module (deletion and reconstruction)
  • Development of complex user interfaces (dashboards, dynamic forms)
  • Implementation of real-time dynamic filters and search

C2 - Optimize performance

  • Optimization of filtering queries for offers and companies
  • Implementation of efficient pagination for large lists
  • Cache system implementation to improve response times

C3 - Administer systems

  • PostgreSQL database configuration with complex relationships
  • User permissions management (students, tutors, administrators)
  • Implementation of data backup and security systems

C4 - Manage data

  • Design of complex relational database schemas
  • Implementation of CSV export system for company contacts
  • Management of histories and application tracking

C5 - Lead a project

  • Planning and task distribution in a team of 4 developers
  • Sprint management and retrospectives using agile methodology
  • Coordination with other RAMSES project modules
  • Meeting academic deadlines and deliverables

C6 - Collaborate as a team

  • Daily collaboration with 3 other developers
  • Cross code reviews and pair programming
  • Technical documentation and user stories
  • Communication with teachers and end users

Fonctionnalités principales développées

Gestion des offres

Page complète avec recherche/filtrage dynamique, création et modification d'offres de stage/alternance

Impact: Interface intuitive permettant aux entreprises de publier facilement leurs offres

Fiches entreprises

Système complet de gestion des entreprises partenaires avec contacts, historique, validation/blacklist

Impact: Centralisation de toutes les informations entreprises pour un suivi optimal

Suivi des candidatures

Dashboard personnalisé pour étudiants et tuteurs avec tracking en temps réel

Impact: Transparence totale sur l'avancement des candidatures

Attribution automatique des tuteurs

Algorithme d'affectation basé sur les préférences et disponibilités

Impact: Optimisation de la répartition des charges d'encadrement

Défis rencontrés

  • • Reprise d'un code existant non fonctionnel nécessitant une refonte complète
  • • Coordination avec 3 autres modules du projet RAMSES
  • • Gestion des contraintes RGPD dans une application académique
  • • Implémentation d'algorithmes complexes (affectation tuteurs, planification)

Résultats obtenus

  • • Module entièrement fonctionnel avec toutes les fonctionnalités demandées
  • • Interface utilisateur moderne et intuitive
  • • Code documenté et maintenable pour les futures promotions
  • • Respect total des contraintes RGPD et sécurité

Project Management & Time Management

  • Planification: Task planning and sprint organization
  • Suivi: User story status updated with each evolution
  • Méthodologie: Agile methodology with regular retrospectives

Functional Assessment

My professional experience at Gonexa began with intensive acculturation to the Salesforce ecosystem: Trailhead training on fundamentals, discovery of APEX and SOQL, then completion of a guided practical case. This first step laid the necessary foundations to then work on production projects.

The skill development was illustrated through missions: design and deployment of the App Admin platform, performance optimization, Vue 3 interface development, and C# backend component implementation - a language I had never touched before.

These achievements allowed me to concretely apply BUT learnings while enriching them:

Technique

Technical deepening: new languages (C#), .NET architecture, Azure CI/CD

Fonctionnel

Functional expansion: understanding business needs (Success Client team) and translation into value-added features

Pratiques

Daily use of Azure DevOps introduced me to professional project management practices: user story breakdown, sprint planning, code reviews...

Perspectives & Conclusion

The challenges encountered, particularly the Composition API migration and production service optimization, confirmed my appetite for developing high-performance and well-structured solutions.

Court terme

Short term: consolidate DevOps skills

Moyen terme

Medium term: aim for a full-stack Software Engineer role, with interest in DevOps and some cybersecurity

Areas for Progression

DevOps avancé

Advanced DevOps: Internal Azure DevOps training

Leadership technique

Technical Leadership: Leading a development team