Jerôme is Technical Manager at 3D Juump. If the software are flawless, that's probably because of him. Discover what this meticulous man has to say about him and his work.
"Because I'm a pretty conscientious person... rigid, you might say."
What's your background?
I went to engineering school and then moved into aircraft construction. During my training, I branched out into computer science: a DEA in networking, then virtual and augmented reality. I was already working a bit with Sylvain (3D Juump’s current manager) and he took me to 3D Juump. That was 10 years ago.
What's your current job?
I’m in charge of industrialization. My job is to make sure that the software we produce meets the specifications and a certain quality. Because I’m a pretty conscientious person… rigid, you might say. I’m also in charge of JavaScript development for the Web API, which is a JavaScript programming library used by all our products on the Web. I oversee that and do a bit of back-end work.
What skills does it require ?
Picky. I think that’s an important aspect of the job. That’s what I’m also trying to push within the team, to be very rigorous, to do things symmetrically. I did an advanced degree in networks and math. Maybe that’s where it comes from.
What are you working on right now?
We’re in the middle of delivering version 4.0 of the software. At the moment, it’s mostly bug fixing, performance enhancement… development tasks.
What is this software?
It’s a very large 3D database viewer. There’s a whole attributive metadata section that we have to manage, enabling us to display a very large quantity of 3D or textual data very quickly. In industry, this 3D database can represent a car, a plane, a train or a boat, from the smallest rivet to a large sheet metal part, for engineering, technical documentation or project review purposes. The challenge is to show all this in real time on computers that aren’t super-powerful.
"That would be a bit of a stab in the dark..."
What are the difficulties?
There are many. First of all, we developed all the software in C++. Then we wanted to develop an infrastructure, with servers to add services. Then we developed an application and switched to the web, for ease of use and browser access. So the biggest difficulty was the performance challenge and migrating all the code we might have or using several parallel threads.
After that, there’s another point that’s just as important: we have to understand our customers’ needs. We often think we’re close, but sometimes we’re not. And that’s something we’re trying to improve every day, by trying to be in touch with them and take their feedback, so that we don’t just provide a superb technical tool, but really provide a tool that enables them to gain time.
Anticipating the future isn’t easy either. These are time-consuming businesses, with a long history of operation, and even if we always want to go further, we have to adapt to the constraints of our customers, who also need time to develop processes, dependence on standards, production and validation chains…
What constitutes a failure?
I don’t think we have any failures. It’s just that we don’t get it right the first time. It’s often an iterative process: you make a first version that’s interesting but still has a few flaws. Then you fine-tune it. In any case, we’ve never gone against our customers’ needs. Generally speaking, we’ve had positive feedback. Even if we’ve had a few minor glitches on delivery, they were negligible. That’s part of the software life cycle, but we’ve never taken the risk of releasing an incomplete version, as we sometimes see in the video game market.
What's the worst that can happen?
That an AI replaces me? No… I’d say: customers telling us they’ve found something elsewhere that’s even better than what we’ve done. That would be a bit of a stab in the dark…
Yet another framework?
Haha yes, there’s always a new language coming out that needs to be implemented, a new library that needs to be tested. In the web world, there are a lot of frameworks that come out very quickly and get a lot of hype. But I’m lucky: in terms of the basic building blocks we provide, there are no incredible tools being used. It’s really the basic stuff, and I’ve got a certain stability with it. On the other hand, it’s true that when it comes to applications, there can be a temptation to go forward to completely new things. And then six months later, you realize that it’s dead.
"Give a man a fish, and you feed him for a day. Teach him to fish, and you feed him forever"
What do you do when it doesn't work?
I grumble. I try to find out who else is responsible. I call the teams and beat them up. No: I simply try to make it work. It can go fast or it can go slow. In the new version of the software, we revolutionized a lot of things, and we had to rebuild step by step.
One of my colleagues told me that when you ask a technical question, you have to allow about 1 hour. How do you explain that?
Ha! guile. In fact, I like teaching, I think that if we’re here on this earth, it’s to pass on something. And in fact, rather than giving the answer, I try much harder to make people understand why it’s the right answer. It’s true that this can take time. It’s a bit like the saying “give a man a fish, and you feed him for a day. Teach him to fish, and you feed him forever”. That’s the idea that drives me.
Anything you'd like to say about Coke?
That it’s something I’d have to give up. I’d like to make it clear, though, that it’s Coke 0. Otherwise I’d be a lot fatter. Then, yes, I know it’s something I have to limit, but it’s my caffeine.