Medallia Engineering Blog

Medallia Engineering Blog

A look inside what we are building

Reflections on My First Year at Medallia

Kacyn Fujii / 2017-01-19 / medallia careers
My name is Kacyn, and this week is my one-year anniversary of working as a Software Engineer at Medallia. I’ve been reflecting on my first year, and as a female engineer and recent graduate, I’m excited to share my perspective with you. I come from a community that has prioritized the promotion of gender equality. My alma mater, Harvey Mudd College, recently received recognition for their efforts in increasing the percentage of women enrolled at the college. Continue reading

Microservices using relocatable Docker containers

Today we want to share a talk that Thorvald Natvig (Architect) and Mauricio Garavaglia (Staff Engineer) gave at a conference in Buenos Aires, Argentina last July. In this presentation they deep dive into the microservices architecture we are implementing at Medallia, what our drivers are and how the development process works. This was a result of a deep analysis of our needs and the lessons learned from other companies on the valley that were kind enough to share them with us. Continue reading

The secret ingredient behind a successful tech lead

Healthy engineering teams are generally structured in a pretty horizontal manner, and yet, for various reasons it is quite common to appoint one of the engineers as Tech Lead (TL). There are many skills and personality traits that can make a tech lead successful: a coder ninja, a great listener, the ability to say no, capacity to delegate tasks, among others. But there is one thing in common that I noticed about all the great tech leads that I’ve seen in my career, and that is having a great second-in-command engineer. Continue reading

Lessons learnt from the early adopters

Guido De Caso / 2015-03-19 / medallia
Two platitudes reign supreme in tech: “Change is the only constant” and “Hindsight is 20⁄20.” As our industry has evolved over the last few decades, things have moved from imperative to object oriented and into functional programming; from waterfall to agile processes; from centralized to distributed versioning control mechanisms; and from desktop GUIs to web and into mobile apps. Even the way we develop, push, build, test, deploy and monitor our precious code continues to evolve with a strong focus on cloud-based solutions and continuous delivery. Continue reading