Tech & Product

We believe in building something useful!

Having great people in your team makes the biggest difference. We believe that with smart and passionate people, a small team can accomplish anything they set their minds to. We value teamwork, clean code and big challenges. Weconstantly strive to improve every aspect of what we do.

Building agreat application这为我们的客户创造了价值,易于使用,作为一项业务,解决人们的问题,很好地扩展和易于维护是一个巨大的挑战,但这是我们早上起床的原因。

观看下面的视频,了解MyBuilder的技术文化。

Perfecting our craft

Assoftware craftspeople在美国,我们知道我们永远无法完善我们的工艺。总有更多的东西需要学习,可以改进的东西。我们定期参加伦敦聚会,参加课程,增加我们在编程、用户体验、设计和数据库方面的书籍收藏。We eagerly share the knowledge we gain with the rest of the team, as well as contribute what we’ve learned and built to theopen source community.

It’s all about our customers

这个概念渗透到我们的文化中,界面就是最明显的例子。我们试图理解那些以各种可能的方式使用MyBuilder的人。我们每天都与他们交谈,并邀请他们到办公室测试新的界面和功能。我们经常把测试带到潜在客户面前,在当地的商店里进行游击可用性测试。我们经常进行a/b测试,并努力做得更多。作为一个市场,我们拥有两组截然不同的用户,创造了一些有趣的动态和需要解决的问题。我们不断提高对业务优先级和客户需求的理解。

Lean & agile

我们的开发方法已经演变成一个适合我们的系统。由于没有一个制度是完美的,我们致力于不断地重新评估和改进我们的工作方式。Honed from exploring various flavours of agile and lean, we believe that our way of working helps us get theright things done at the right time.

We prefer shipping the right features for our users rather than just ship something to meet a deadline. Imagine that you have a builder coming to renovate your bathroom: Would you rather he finish on time but risk that the bathroom develops issues within the first year? The same is true for our engineering team and development culture. We ship good code, useful features and create value for our users. We would rather extend a deadline than produce bad code, or worse, dangerous bugs or regressions.

React

We started using React in Jan 2015 and our usage grows every year with all of our key systems now using React for the frontend. We believe strongly in tests and all of our new apps are using Redux, TypeScript and Storybook in a monorepo. We have a number of React apps throughout our system, from ourpost a job我们的商人和业主之间的经验,沟通和交流,甚至我们的商人审查系统。世界杯荷兰vs威尔士竞猜Read the case study. Many new React applications are currently in the works, and we’re excited about bringing in the latest features and enhancements to our existing React apps.

例如,我们的新审查系统允许我们向加入我们网站的新商人提出定制的问题。这些实际的问题是基于我们在办公室进行的行业面试,使用一个简单的内部管理工具构建的,并通过React应用程序向新申请人公开。

Symfony, a PHP framework

Symfony rocks! In our opinion, Symfony and PHP allow us to develop our system super fast while maintaining terrific code quality because they are both mature, stable and well-documented. They are the perfect match for us. They take care of the CRUD, allowing us to put our heads together to solve the complex problems. We migrated our main website from Symfony 1 to Symfony 2 in 2013, Symfony 3 in 2018 and are using Symfony 4 on more recent projects. To help grow the London Symfony community, we’ve sponsored the Symfony Live London conference as well as the Symfony meetups, and we’ve given regular talks at many Symfony events (including one at thePHPUK 2019 conference).

Testing

We don’t believe that testing is throwing a page at someone and asking them to have a look. Instead, we believe that for you to be finished with a project that you need to have adequate unit and functional test coverage. We use PHPUnit, Symfony’s functional testing system and Jest. We have close to7,000 automated tests, with over tens of thousands of assertions, and a continuous integration system that screams when someone breaks it. We’ve also built our own end-to-end testing framework and tests for verifying various React apps. This is all part of our build process.

PostgreSQL

PostgreSQL is the best match for our needs, offering advanced features coupled with a high level of data integrity. To ensure data integrity, we take advantage of PostgreSQL’s triggers and functions by pushing some of our business logic into the database. For example, we use triggers to log data changes, which makes things more consistent and reliable. Postgres has allowed us to make the site faster by taking advantage of query optimisation features such as geospatial functions and partial indexes.

Infrastructure

All our infrastructure is provisioned within AWS using Terraform to automate away the pain of manual configuration wherever possible. Our philosophy is to treat infrastructure as immutable, allowing our tooling to tear down and rebuild from scratch whenever it feels like it. Having fully embraced the Serverless mindset, and as sponsors and contributors of theBrefproject, we are proud to say that all web traffic is handled by Lambda. We get satisfaction from using the latest technologies to increase developer velocity and in turn add business value.

Want to know more?