From Artifacts To Applications: My Odyssey to Front-End Development

Bernardo Cardoso
OutSystems Engineering
9 min readOct 31, 2018

I used to be an archaeologist and then, I decided to change my career.

Two years later, I’m a front-end developer at OutSystems R&D! Yes, I know it seems unbelievable, but rest assured, that’s exactly what happened. Here’s my story, I’m hoping it may inspire someone that’s at a career crossroads, as I was. Maybe it’ll inspire them to take a leap of faith?

You see, archaeology isn’t always as cool as people make it out to be. I wasn’t running from boulders, fighting Nazis, or on the verge of finding the Holy Grail. And there’s also no Lara Croft. Most of the daily work consisted of spending days overseeing a bunch of people digging trenches.

How people imagine archaeology vs. how archaeology really is. Image credit (left): Paramount Pictures (presents), Lucasfilm — Indiana Jones: Raiders of the Lost Ark (1981). Image credit (right): © Copyright Rob Noble.

After spending a few years studying and working in the archaeology field, I was restless and looking for a change, I needed to find something more engaging. As you can imagine, this was one of the most difficult decisions in my life. My academic degree was actually pretty awesome, and the fact that we got to study humanity from the Dawn of Man to the present day, through the rise and fall of numerous civilizations, resulted in a very particular perspective of the scale of us (mostly the insignificance of it all). So, with that in mind, I eventually realized that changing my field of work wasn’t such a big deal after all. It’s never too late to take a leap of faith. Better sooner than later!

Now, I won’t fool you and say that I’d wanted to be a frontend developer since I was a kid. To be honest, I didn’t even know such a thing existed! I vaguely knew there was a type of code called HTML. Choosing this area of study was probably the coldest, most analytical decision I’ve made in my life. I was convinced, in a slightly arrogant way, that I was capable of learning almost anything I chose. So, I looked for a balance between doing something I would enjoy, and something that would provide a comfortable income (which, in archaeology, wasn’t always easy). The last push was having a web designer in the family, who’d encouraged me to pursue this, and also family members with an artistic background and sensibility. From them, I’d gained an appreciation for visual aesthetics.

Digging in and Learning a New Career

I started off by attending a professional UX/UI and Development course. I must admit, I really enjoyed the UX/UI side of it. It reminded me a lot of archaeology, but in a “mirror image” way. That’s because archeologists are limited to working with artifacts. Through them, they have to try and understand who the user was, why they made the artifact, when they made it, and how they made it. In web design, we already know our users; we just need to craft the best possible artifact for them to use according to what they need to achieve. In the end, both disciplines struggle to understand the same target, the artifact, but from opposite directions.

However, it was the development section of the course that I really found intriguing, especially when we started using HTML, CSS, and Javascript. I don’t know why, but my brain got very pleased by the constant challenge and need to problem-solve using code, always in a clean, efficient, and organized way. After finding development so appealing, I set a new goal for myself. I wanted to become a frontend developer! Obviously, I had a few concerns. Was I too old to start as a junior in a new career? Would my previous career be a handicap while job seeking?

Spoiler alert: thanks to companies like OutSystems and Hi INTERACTIVE, I was happily and proudly wrong! After successfully completing the course and continuously learning as much as possible, as fast as possible, I joined Hi INTERACTIVE as a junior frontend OutSystems expert!

Wow! Look at that!

To be honest, at the time, I wasn’t entirely sure of what that meant, but it sounded cool, atomic, and next level! Shortly after, I joined OutSystems as a partner. I was assigned to the team that’s responsible for great accelerator initiatives, like Silk UI Framework and the new OutSystems UI.

So what was that like? Well, I’m not sure if it’s from my archaeological background or for being a sci-fi nerd (or both really), but from the moment I started working at OutSystems, I felt like Moonwatcher and Dave in 2001: A Space Odyssey. By the way, best movie ever! Go see it now (wait, not now, finish this article first please). The movie’s plot has many similarities to my story.

Plus, it makes me look smart.

The Dawn of the Frontend Developer

My first contact with OutSystems. Image credit: MGM/Stanley Kubrick Productions — 2001: A Space Odyssey (1968).

I started off with an onboarding phase, as would anyone joining the team. This phase is where newcomers learn about what it means to work at OutSystems, but it’s also where we show the team what we can do.

Rita, the JavaScript guru on the team, told me I just needed to do a pattern and a mobile movie app. And I will never forget what she said next: “It’s really simple, Bernardo, you just need to do something AMAZING.”

This is HAL 9000. It’s how I saw Rita at that moment. Image credit: MGM/Stanley Kubrick Productions — 2001: A Space Odyssey (1968).

Well, I’m not sure if what I did was that amazing (hey, I’m still here so… who knows), but in no time I started working on some patterns for the new OutSystems UI. How cool is that, right? I even, dare I say, started to memorize the names of the 9000 different meetings and initiatives the team has, which are HAL of them, ha! (sorry, I couldn’t help myself)

My first week at OutSystems, I was introduced to The Small Book of The Few Big Rules. I found the book very cool, and everything in it made perfect sense. But, to be honest, at the time, I was with Han Solo on this.

At the time it seemed a bit Mambo Jambo. Credit: Star Wars: The Force Awakens (2015).

Anyhow, those first weeks onboarding were awesome. The team was already doing everything according to the best-practices I’d learned, like only using JavaScript (no pesky jQuery here), writing CSS using BEM, and applying state-of-the-art tools like Flexbox and CSS variables. Also, the way we structure the code, by patterns, is in a very atomic design way (yes, I heard all about Brad Frost during the design course).

The Fast UI Development Mission

After some time, having developed a couple of patterns, I was given the opportunity to work on defining and developing the new Screen Templates.

Artifact #1. Screens from the Fast UI Development mission.

The objective was clear. Create a set of screens that could bootstrap and accelerate the development of applications, while still providing great UX by default (reflecting our Design System). The UI must be highly adaptable through OutSystems UI, and the Logic must be customizable through the new Replace Data feature.

However, developing this wasn’t always so clear. You see, the Screen Templates are a first contact in the user experience, and centralize a lot of work from different teams:

  • They had to be compatible with the Replace Data feature, as much as possible. This normally means simplifying the logic and the UI to minimize the number of errors.
  • We had planned and iterated the original screen mockups to the most minute detail. But now, to increase their adaptability, their design would have to be simplified. This process led us away from the original designs, and we found maintaining the UX/UI consistency to be quite a challenge.
  • And last but not least, our own drive in ensuring they were a great showcase of the patterns that make up our new UI Framework (which, at the time, was still under development).
It’s all about alignment. Image credit: MGM/Stanley Kubrick Productions — 2001: A Space Odyssey (1968).

Believe me, they changed more times than I can count until the sweet spot was finally reached. And this was when I started to realize that the rules in The Small Book of The Few Big Rules were really taken literally around here, mainly the “ask why” rule (and that Han Solo and I were wrong).

During the process, I always tried to listen and respond to all the feedback that reached me. I constantly checked to make sure that I was on the right track, ensuring that my work was in line with what more senior people in the R&D department expected. They know more than I do so I listen to their advice! But then, there’s a grey area — cue the “ask why” rule. Although it doesn’t seem that unique of a rule, the difference is that at OutSystems we really mean it.

You see, in archaeology if I asked why consistently enough, I would have just one thing guaranteed — I wouldn’t be invited to the professor’s excavation next summer.

And that was probably the greatest revelation for me. Even as a junior developer, I had an important and respected voice. In the end, I didn’t just blindly do whatever was assigned to me, I also wasn’t stuck with the tasks that the more senior developers didn’t want to bother with. I had an active impact on the final result of the Screen Templates, as well as the patterns that I implemented.

And with that kind of freedom comes, yes, you guessed it — great accountability! This was another impactful moment. At first, I thought: “Hmm, cool! Here I am building these screens, for my team to see, and eventually, some people in the other teams will also get to see them. I’m feeling a bit nervous!”

And then, my team captain, Dinis Carvalho, took my world in his hands, crumpled it into a ball and threw it at me without mercy: “Some people in other teams, Bernardo?!? Haha, the whole company has seen them, dozens of clients are already using them. Which means hundreds of people can see the Screen Templates. Remember the little fix you shipped in the last package? Yep, they all see it, and they know it was you.” Imagine the horror.

The moment it all clicked. Image credit: Universal Pictures (presents), Amblin Entertainment — Jurassic Park (1993).

Well, in time I got accustomed to it, in fact, I’ve even started to enjoy the visibility of our work. It’s very cool to know that something you contributed to made it to the final solution. That’s something that wouldn’t be possible in archaeology, as everything is more exclusive and shrouded in a bit of secrecy, even when knowledge-sharing or publishing studies.

The Release Portal

What makes us turn up every morning, full of enthusiasm, is delivering a great product, one that we are proud of. We wait in anticipation until the moment OutSystems developers start using it, loving it, breaking it, and improving it. What we learn from our users brings us back to the drawing board, and we start over again. We iterate and then iterate some more, and that’s ok. It’s the only way to keep improving.

The next step of evolution. Images credit: MGM/Stanley Kubrick Productions — 2001: A Space Odyssey (1968).

Please indulge me, and pretend you are listening to Also Sprach Zarathustra, to end this in an epic tone.

Just like Dave in 2001: A Space Odyssey, I feel that I’ve come full circle. I’ve conquered all the monoliths that I encountered along the way, and now, I’m all the better for it. It’s been the ultimate trip. I can’t wait to see what the next step (pun intended) of my evolution will be!

Further Reading

--

--

Bernardo Cardoso
OutSystems Engineering

Is an avid lifelong learner, and front-end developer at OutSystems who loves the collaborative, and problem-solving nature of his job.