[{"data":1,"prerenderedAt":213},["ShallowReactive",2],{"post-en-my-it-experience-vrt":3},{"id":4,"title":5,"body":6,"date":196,"description":197,"draft":198,"extension":199,"meta":200,"navigation":201,"path":202,"readingTime":203,"seo":204,"stem":205,"tags":206,"translations":210,"__hash__":212},"enBlog\u002Fen\u002Fblog\u002Fmy-it-experience-vrt.md","My IT experience at the Valais Racing Team",{"type":7,"value":8,"toc":186},"minimark",[9,13,22,27,30,45,48,51,55,62,65,72,79,83,86,123,126,130,133,142,147,154,157,161,164,167,170,174,177,180,183],[10,11,5],"h1",{"id":12},"my-it-experience-at-the-valais-racing-team",[14,15,16,17,21],"p",{},"I joined the ",[18,19,20],"strong",{},"Valais Racing Team"," in October 2024. This article is about what I've been doing there since, from the angle that has taken up most of my time: IT.",[23,24,26],"h2",{"id":25},"october-2024","October 2024",[14,28,29],{},"When I joined VRT, IT didn't really exist as an entity. There was code, tools, an Odoo inherited from previous classes, but no overall coherence and no clear playbook. Things ran in fits and starts, depending on who had the time and the motivation that week.",[14,31,32,33,36,37,40,41,44],{},"A Formula Student team is organized around two big categories: ",[18,34,35],{},"technical"," and ",[18,38,39],{},"business",". On the technical side, you have the mechanical and electrical teams that build the car. On the business side, the team that handles marketing, sponsors and events. The ",[18,42,43],{},"board"," sits apart: it's the body that runs the association. IT, by default, fell into the business category, which meant its priorities were dictated by sponsors, events and the board's agenda, not by technical debt or season-to-season handover.",[14,46,47],{},"We negotiated with the board so that IT could exist as its own team. Not to plant a flag, but because the stakes of an internal information system don't get planned the same way as a communications campaign. Having our own lane gave us the room to set our own work calendar.",[14,49,50],{},"The conversation took a few weeks. Once it landed, we had managed to break out of business, with our own latitude and real expectations on the other side of it. In a student association, things move fast, but you have to make them move yourself.",[23,52,54],{"id":53},"the-first-project-the-erp","The first project: the ERP",[14,56,57,58,61],{},"The first real undertaking was the ERP. VRT was running on ",[18,59,60],{},"Odoo",", with custom bits stitched on top.",[14,63,64],{},"Honestly, I'm not going to reconstruct the precise history of why it wasn't working, because I didn't have it all in my head at the time and I don't want to make things up. From memory: something had been done on Odoo but it didn't run well. Every season we had to reconfigure, glue pieces back together, and that work ate time we didn't have. The conclusion we drew was simple: we won't save this Odoo, we need to start from a blank page on something else.",[14,66,67,68,71],{},"I took a few weeks to evaluate the alternatives. Three criteria, in this order: efficiency (how much the tool already does without us coding), ease of implementation, and maintenance for the next person who would inherit the code. ",[18,69,70],{},"Dolibarr"," passed the filter. PHP + MySQL, a very simple module model, a large French-speaking community, concrete documentation. Less fancy than Odoo, but more human, and above all more readable for the person who would open our code two seasons from now.",[14,73,74,75,78],{},"We forked Dolibarr rather than running the standard version. It was a commitment, I'm not going to pretend otherwise: each custom module becomes a small maintenance pact, and integrating upstream updates lands on us at every major release. But we wanted to be able to add deep modules (multi-step signatures, automatic deductions on budget, ",[18,76,77],{},"Keycloak"," integration on the auth side) without doing a tightrope act over a public API. With two years of hindsight, I'd make the same call again.",[23,80,82],{"id":81},"whats-in-the-erp-today","What's in the ERP today",[14,84,85],{},"Several custom modules form the heart of the fork in production. The main ones:",[87,88,89,96,102,111,117],"ul",{},[90,91,92,95],"li",{},[18,93,94],{},"Budget",": tracks financial commitments along three axes (team, system and subsystem of the car, season), with automatic deduction on each validated order. The treasurer sees the state of the envelopes in real time.",[90,97,98,101],{},[18,99,100],{},"Orders",": four-step validation (team lead, CFO, CTO, CEO), email notifications at each step, PDF generation with electronic signature on the way out. It's the most-used module.",[90,103,104,107,108,110],{},[18,105,106],{},"Member",": member management, with a registration form on the front end. On validation, the member is dynamically created in ",[18,109,77],{}," (so propagated across the whole SSO ecosystem at once), and a welcome email goes out to their address with their access details and the basics to get started.",[90,112,113,116],{},[18,114,115],{},"Emergency",": active during competitions. Participants on site have access to other members' emergency info (next of kin, allergies, relevant medical notes), after signing a usage charter because that data is sensitive.",[90,118,119,122],{},[18,120,121],{},"Forms",": generic engine for competition registrations, requests from teams, feedback questionnaires. Custom fields, multi-step workflows, email alerts, PDF generation.",[14,124,125],{},"Smaller bricks orbit around them. Each module addresses a need that base Dolibarr didn't cover: that's what justified the fork.",[23,127,129],{"id":128},"beyond-the-erp","Beyond the ERP",[14,131,132],{},"Once the ERP was in production, we built out the wider ecosystem. Not from a taste for tools, but because an ERP alone doesn't cover everything a team needs to live.",[14,134,135,137,138,141],{},[18,136,77],{}," is now the central identity manager. Dolibarr and ",[18,139,140],{},"Nextcloud"," are wired into it via SSO, which means a member only has one account to manage, and when someone leaves the team, we revoke access in one place. For an association whose lineup changes every year, that genuinely changes things.",[14,143,144,146],{},[18,145,140],{}," hosts the team's calendar (competitions, track days, technical milestones) and the photos taken during events. The calendar surfaces inside Dolibarr through a widget, so a member sees their schedule in the same place as their pending orders.",[14,148,149,150,153],{},"The whole stack is hosted at ",[18,151,152],{},"Infomaniak",", in Switzerland.",[14,155,156],{},"It's not perfect. There are seams we'd like to smooth out, automations we haven't had time to write yet. But it's coherent, and it's entirely under our control.",[23,158,160],{"id":159},"the-team-at-six","The team at six",[14,162,163],{},"We were two at the start. At one point I carried IT alone. In 2026 we're six, with first-years coming in. For me it's a turning point: I'm moving from \"I'm holding the thing up at arm's length\" to \"I'm passing the baton\".",[14,165,166],{},"They're not on the Dolibarr fork yet. They're working on other bricks. First, the future VRT mobile app, which we plan to publish on the App Store and Play Store so members can get the important info and the competition calendar straight on their phone. And the new VRT website: I did the bulk and the early work on it, it's coupled to the ERP for the members display, and I now hand them pieces of it to take on. In parallel, they maintain and patch the current site.",[14,168,169],{},"The idea is for them to find their feet on those areas before I bring them into the Dolibarr fork. PHP isn't the first language a first-year student is comfortable with, and Dolibarr's module model has its quirks. We'll go through small isolated projects, pair programming, and a lot of internal documentation. It's not the fastest way to ship, but it's the only one that lets the team survive when I leave in turn.",[23,171,173],{"id":172},"whats-next","What's next",[14,175,176],{},"The current project is to package everything we've built (the Dolibarr fork and its modules, the Keycloak integration, the Nextcloud connection) into something that could serve other Formula Student teams. On the exact model (open source, SaaS, paid support?) we haven't decided yet. But the idea holds up: the needs of an FS team look similar enough from one association to another for what we built at VRT to be reusable elsewhere.",[14,178,179],{},"For me, 2026 is the last season as an active member. After that, I move into a mentor role: following the project from a distance, in theory, lending a hand when something gets stuck, passing on what I can. The \"in theory\" is there because I already know I'll come back and get my hands dirty when the team needs it, and that's actually a good thing.",[14,181,182],{},"And there's also this: two seasons at VRT isn't only an ERP and servers. It's another universe, alongside my dev workdays. Track day weekends. Competitions that last a full week, in tents, sleeping three hours a night, getting woken up at 6am by Germans blasting techno across the entire campsite, crossing paths with people from other teams who came from everywhere. Evenings where we talk car, code, sponsors and personal life around the same table. An association of human size, fifty or so people, different paths, a shared goal each year. For someone who spends most of their time in front of a screen, that kind of balance is rare, and I didn't see its full value right away.",[14,184,185],{},"What I take away from these two seasons is that the right tool is rarely the one that shines the most. It's the one that the person taking over after you can open without fear. And that half the value of the project doesn't live in the code: it lives in the people you cross along the way.",{"title":187,"searchDepth":188,"depth":188,"links":189},"",2,[190,191,192,193,194,195],{"id":25,"depth":188,"text":26},{"id":53,"depth":188,"text":54},{"id":81,"depth":188,"text":82},{"id":128,"depth":188,"text":129},{"id":159,"depth":188,"text":160},{"id":172,"depth":188,"text":173},"2026-05-04","Two seasons spent building the IT crew of a Formula Student association, from the inherited ERP to a six-person team.",false,"md",{},true,"\u002Fen\u002Fblog\u002Fmy-it-experience-vrt",null,{"title":5,"description":197},"en\u002Fblog\u002Fmy-it-experience-vrt",[207,208,209],"tech","racing","devops",{"fr":211},"mon-experience-it-vrt","cthBVJi4qqZbNmR83gKcmW0PrLe2xNk9buSnvv3gE-I",1779297322972]