My adventure in London started around a year ago. I arrived at the end of July 2015, after working as a software developer for a company located in Gliwice (Poland), for 1 year and a half. My wife and I decided that it was the time to make a very important step in our lives. I applied to companies in Germany and the UK, and finally I got a job at MediaMath, in London, where I spent 8 months working with a very good and talented group of people.
I have been working at MyBuilder for six months now, so that means it’s time to explain a little bit about my experience here.
After working at my last job for over five years and finishing my final degree project, it was time for a new challenge. A big challenge. My partner and I decided to move from Barcelona to London, we thought it could be a great experience for us to live abroad for a while, and a good opportunity to learn. We wanted to learn more about other cultures, other ways of doing things, and also we wanted to improve our English.
When somebody makes an action on a webpage, they expect instant feedback. They’re not thinking about the server responding and acknowledging a change. At MyBuilder we’re aware our customers are using mobile devices more then ever. Without optimistic updates network latency can kill our app’s perceived speed.
The Flux architecture abides by a single unidirectional data-flow throughout the entire application. This provides us with a host of benefits, ranging from easier to reason about code, to clearer testing strategies. However, one issue we faced in our recently updated interface tradesmen use to communicate with customers, was how to handle asynchronous calls within these constraints. Throughout this post I wish to guide you through the iterative design decisions made, along with the resulting abstractions and boundaries.
I was playing with Docker last week and decided to replicate a virtual host environment where different domains should point to different containers running in the host machine. The same way we can easily do with Apache or Nginx.
As a designer, I sometimes struggle to remember that the audience can’t always see what I see. When I solve a problem there are usually many constraints and frameworks that — unbeknownst to the audience — must be adhered too. I have to make products that not only solve a problem but make sense to me, and the audience.
Well, I recently finished my first three months at MyBuilder, and according to tradition, I was asked to write a blog post about my experience.
I had been contracting for some years and was pondering a return into permanent employment. When my last contract ended I had some down time and plenty of time to think things over. As much as I love the freedom of contracting I did miss being part of a company proper; where my input would shape my own future in it.
Recently Max Howell (creator of Homebrew) posted an interesting tweet in regard to Google’s interview process. In this tweet he mentioned how one of the proposed questions was to white-board a solution to invert a binary tree. Over the past couple of years I have been interested in exploring fundamental Computer Science data-structures and algorithms. As a result, I thought it would be interesting to explore this structure and associated operations in more depth - using immutable and mutable PHP implementations to clearly highlight the benefits garnered from each approach.
Throughout project development we use Jenkins to provide meaningful test feedback on each Git push event. These builds are required for a sufficient amount of confidence to be gained for merging into master and subsequently deployment. Each member of the team has their own project which they manage with the current project/branch they are working on. However, typically we find ourselves working on multiple branches throughout the day, and it can become cumbersome to update the projects configuration.