DEV Community

Bryan Lee
Bryan Lee

Posted on

Working at Undefined Labs

Originally written by Javier Vidal

If you are planning to invest or work with Undefined Labs, this blog post is for you. After almost a year working as a Frontend Engineer at Undefined Labs, I’m excited to summarize how it’s been one of my best experiences working for startups.

This is my personal view of a promising startup inside the rich Spanish culture.

The Team

The team is led by @borjaburgos and @fernandomayo, very smart technologists with a clear vision about the future. They already sold their previous startup to Docker, Tutum, and since then, they have been working on the same market, so few people in the world know the Docker environment better than these two. They are always looking at the industry, obsessed about converting ideas into business. And now they are trying to repeat the success of Tutum. Believe me, they know what they are doing.

We are only eight engineers, all talented senior developers. Not having any junior or mid-level developers is a questionable decision, but what I can say is that this is working for us. We try to build as fast as possible. Fewer people means less time communicating and organizing, so we can move and pivot quickly.

Our strength is our differences. Except for the frontend team, who are three javascript developers, the rest of our engineers code in different languages: .NET, Python, Java, Go, and Swift. This diversity in programming languages is required by the products we are building, but also a decision we made to support the multilingual systems of most engineering organizations. Since the majority of our developers work alone on their stack, it requires a high degree of responsibility and ownership. And we don’t fall into the trap of having what-is-the-best language or IDE arguments. Brie Wolfson described it as Tupertine.

Sometimes, having only one person resolving technical problems in each language can be painful, but it gives us a considerable perspective when dealing with a strategic decision about products.

And all of this was possible because of the hiring process. Fernando, the CTO, has tried very hard to find the best talent in Spain. He has a clear vision of the kinds of players that would aspire to form a perfect team. It should fit perfectly for the way we do technology.

Software development

Choosing technology is a vital decision, so we do it strategically. As we are building things from scratch, we have the freedom to choose whatever we want, with no dependencies or debt. But we also know that there are unknown unknowns that could slow us down, so we always try to use already proven technology. Or frontend is written in React, while our backend is in Python. We use Apollo for communications, so GraphQL is our daily language.

While it’s easy to get overeager in our choices around technology, the team always grounds these decisions by holding the end-user experience as the leading priority. We always make decisions with the user in mind, careful not to add complexity that isn’t justified by the value delivered to the user. Keep it simple is our mantra. Unjustified complexity is forbidden.

The benefit of building developer tools is that we are always our first users. Dogfooding is a widespread practice in the industry, and we embrace it. It increases the sense of ownership, as you feel the wins and pains of the product directly. It’s a common occurrence to see a colleague sharing a new dogfooding case in Slack, followed by questions and suggestions on how we could improve the experience.

Another exciting prospect of building developer tools is the opportunity to impact how you and others in your profession will work. Few professions are responsible for building many of the tools they will use on a day to day basis. It can be invigorating having such a tight feedback loop, where every iteration of the product immediately enhances the way my coworkers and I work.

Dream big, everything is possible. Fernando has taught — by doing — that no matter how far you are from the Bay Area, you can still out-compete technology incumbents. An inspirational ideal that gives us the confidence to compete in a demanding market.

The market

We are developing tools for developers. The space for tooling is vast, so we are focusing on the CI/CD phases. Some of the hot topics at the office are observability, testing, and building.

If you want to know more about the products we have already released, check out https://undefinedlabs.com.

In the beginning, when I entered Undefined Labs, I was skeptical about the market. I thought it was all about IDEs and Plugins, which I find very boring. But the founders’ motivation surprised me. And after a couple of months, I could understand why this market has so much potential.

We are in a new promising market. As digital products evolve, so does the software behind it. The systems that power these products are getting more complex every day, so companies are spending more and more money developing, shipping, and maintaining these complex systems. On the other hand, the DevOps culture is growing fast and more and more developers are getting into the operations space. By addressing the needs of developers, your technology can reach millions of end-users.

Many of the existing solutions at our disposal are brilliant, built by the best minds in the industry. You can learn a lot by just looking inside these new products and features. To have the opportunity to compete with these minds — and do it successfully — is a very humbling and fulfilling experience.

Because the market is getting bigger, a lot of companies from small startups to big fortune 500s are entering, and it can be exciting being a part of this chaotic, fast-paced ecosystem. We usually watch the more significant industry conferences together like GitHub Universe and AWS re:Invent, and pay close attention to how the announcements may affect us, either immediately or down the road. It seems commonplace during these conferences that a big company announces an acquisition or the release of a new feature that makes the latest trendy tool in the market useless. The frenetic pace can seem crazy, but it gives you a sense of urgency. This adrenaline keeps us focused.

Finally, our customers are smart people. Often, they are the innovators within their larger company. They know exactly what they need, so the feedback they give is invaluable. Also, we speak the same language as our customers, so the GAP between what we are building and why we are doing it is drastically reduced.

The environment

At the time I’m writing this, there are ten of us in the company. Two of us are in the USA, handling meetings and looking for customers and partners. The developer team is in Madrid, the capital of Spain.

VC investors from Silicon Valley back the company. The difference in the average salary between Silicon Valley and Madrid is significant, which allows us to be very money-efficient while still offering the best compensation in Spain. This allows us to enjoy and live in one of the best countries in the world.

We also enjoy one of the best locations in Madrid. The office is located in the city center, near good restaurants and public transportation.

Madrid is a vibrant city. Like other capitals, it is full of young people from all around Spain striving to leave their mark. Also, it receives influences from people coming from Latin America. This makes Madrid a beautiful place to sample Spanish culture.

We have the best weather in Europe, with clear skies and a temperate climate. The summer is hot, and the winter is cold, but it never snows. If you want to go to the beach, you can take a 3h train to Valencia or Barcelona. If you prefer the mountains, you have ski resorts less than 2h by car.

We enjoy the city together. Some of the team members have lunch in the office, and others go out to have lunch daily. But altogether we go out on Friday for our team lunch.

I’m looking forward to seeing what new products or ideas we bring to life. If you are also interested, follow us on Twitter, and keep an eye out for an opportunity of joining us at https://undefinedlabs.com/about-us/

Testing is a core competency to build great software. But testing has failed to keep up with the fundamental shift in how we build applications. Scope gives engineering teams production-level visibility on every test for every app — spanning mobile, monoliths, and microservices.

Your journey to better applications through better testing starts with Scope.

Top comments (0)