Factorial Labs Our thoughts A sneak peek into the minds at Factorial and how we keep it all moving Developer Experience Work-stealing for CI How specbandit cut testing time by 25% Ferran Basora Ferran Basora David Morcillo David Morcillo Ruby Scaling background job system Answering UX concerns in a background job system Ali Deishidi Ali Deishidi Culture The Art of Code It’s about the beauty in structure, the elegance in problem-solving, and the human touch behind every line of code. Yara Debian Yara Debian Career The Omelette Guru Two paths to mastery: one spreadsheet, one spatula, both chasing the perfect omelette. Oriol Gual Oriol Gual Culture Optimize for Inspiration Is your team inspired or uninspired? Learn about their traits and what to do about them. Josep Jaume Josep Jaume Career Engineering Lessons From Football: Scoring Goals in the Game of Collaboration A delve into the intersection of football dynamics and the world of engineering, drawing parallels that illuminate essential principles for effective teamwork and professional growth.... Abiodun Olowode Abiodun Olowode Culture Revolutionizing My Retrospectives: How I Transformed My Process and Results Marina Planells Marina Planells Developer Experience Factorial's frontend journey to Vite Marc takes us on a journey from Factorial’s use of webpack, challenges faced, the investigation for a replacement, the solution proffered and the team’s adoption... Marc Torrelles Marc Torrelles Culture Belonging and the return of love. Employees are at their best when they feel that they belong in the organization. Belonging is vital to performance, innovation, and retention. Let’s delve deeper... Ray Garcia Ray Garcia Growth LeadDev Berlin wrap-up Part of our team went to LeadDev Berlin 2022. This article is the highlights of the 2 days of the conference for Garance, through her... Garance Vallat Garance Vallat Career Discoveries of a Junior software developer Being a junior software developer on its own is an experience. Knowledge unfolds, and discoveries are made. Yara shares a personal experience that many junior... Yara Debian Yara Debian Data Business Intelligence as a service — a journey Your customers call, and they want their data back. How can you give them access without compromising your release cycle, blowing up operations, or breaking... Txus Bach Txus Bach Maintainability How we merged our main repositories into a single monorepo Get a detailed description of how we merged our main repositories into a single monorepo - the reasons, considerations, dos and don’ts, challenges, and wins.... Ferran Basora Ferran Basora David Morcillo David Morcillo AI What are embeddings, really? How can AIs manipulate abstract concepts? In this article, we’ll develop our knowledge about embeddings, a powerful technique behind AIs today. Txus Bach Txus Bach Product How my 2-year-old daughter taught me a valuable Product-Management lesson A personal story about the nuances and subtle details we tend to overlook during communication/understanding, hence, making it ineffective, and how this relates to Product... Paulo Ávila Paulo Ávila MobX Sneak Peek Behind the Scenes of MobX In the first three chapters of the MobX series, we have demonstrated how MobX works. However, in this chapter, we focus a little on how... Hameed Damee Hameed Damee Pau Ramon Revilla Pau Ramon Revilla Ruby The N+1 Dilemma - Bullet or Prosopite? Improving the performance of any Ruby application usually entails fixing N+1 queries. In this article, we’ll find out how well the Bullet and Prosopite gem... Abiodun Olowode Abiodun Olowode React Async Action with MobX This article introduces the usage of asynchronous methods in mobx. Interacting with APIs is a major aspect of frontend development, hence the need for asynchronous... Hameed Damee Hameed Damee Culture The epiphany: From Individual Contributor to Engineering Manager (and back) This article gives us insight into the path of an engineer in Factorial who went from an individual contributor position, to an Engineering manager, what... Omar Sotillo Franco Omar Sotillo Franco Javascript Demystifying the JavaScript call stack At the most basic level, the call stack is a data structure that utilizes the Last in, First out(LIFO) principle to store and manage function... Johnson Ogwuru Johnson Ogwuru React Hooks Considered Harmful React hooks changed radically how we build frontend applications allowing engineers to separate stateful logic from rendering. However, under a seemingly simple API there are... Pau Ramon Revilla Pau Ramon Revilla Growth Fast validation with A/B testing in Optimize Fast iteration and validation are part of the day-to-day activities of Growth teams in Factorial. We need to activate levers of growth to boost our... Sergio Mosquera Sergio Mosquera React Mobx Hooks With the introduction of hooks in React, there have been updates to the way components are written. MobX also leverages this with its hook APIs... Hameed Damee Hameed Damee Culture Some months working in a utopia Although, Factorial does not identify as an agile company, are its principles similar to that of the agile manifesto? Join Mario as he takes us... Mario Nunes Mario Nunes Product The Role of a Product Maker at Factorial Take a ride with us as we introduce you to the Product maker role at Factorial, what it entails and why it exists. Samuel Perez Samuel Perez React React State Management with MobX State management is one of the core building blocks of frontend development. This article introduces the use of MobX for state management in a React... Hameed Damee Hameed Damee TypeScript How we migrated 400K+ lines of code from Flow to TypeScript Get a detailed description of how we migrated to TypeScript, the challenges faced and how they were surmounted in order to ensure a safe landing... Ferran Basora Ferran Basora David Morcillo David Morcillo Culture Factorial’s Engineering Culture - A newbie’s perspective Catch a glimpse of the engineering culture at Factorial. Learn more about how things are done and the impact this culture has had on the... Abiodun Olowode Abiodun Olowode Maintainability Don't create leftovers (DCL) Improve the maintainability of your projects detecting this bad pattern in your code. Ferran Basora Ferran Basora Ruby A trick with the Ruby documentation Another post in the “Awesome Ruby tricks” series Fran C. Fran C. Career Why most developers fail their first tech interviews In this post, we will go over the developer recruitment process at Factorial, mostly as an excuse for me to explain what is it that... Gerard Gerard Culture A set of programming aphorisms at Factorial At ,Factorial,, we maintain an engineering Handbook where we document aspects such as common abstractions, programming principles and documentation of our architecture. Gerard Gerard Ruby Some reasons to avoid Hashes in Ruby and some alternatives to them. So, hashes, uh? Fran C. Fran C. Culture A handful of engineering principles at Factorial Catch a glimpse of some of the Engineering principles adopted at Factorial and why these principles work Pau Ramon Revilla Pau Ramon Revilla Ruby A trick with Ruby anonymous classes Since everything in Ruby is an object it is only normal that classes are objects too. Which means they just have regular constructors with initializers,... Fran C. Fran C. Ruby A trick with Ruby Hash.new Hashes are used a lot in Ruby (sometimes even abused). However, they have a very interesting functionality that is rarely used. Find out more in... Fran C. Fran C. Ruby A trick with Ruby array literals Learn how to save array elements as variables the same time you declare them and the scenarios in which this might come in handy. Fran C. Fran C. Made with ❤️ by Factorial's Team