Takeaways from the 2018 ExpoQA in Madrid

July 23, 2018

July 23, 2018 by Daniel Gordillo

For the fourth consecutive year, Ebury attended the ExpoQA conference during 4-6 June in Madrid. Events such as these are paramount in order to stay updated with the latest news in technology, tools, methodologies and all the nerdy stuff we love.

We would like to highlight the following  presentations:

  • Focus on product quality instead of testing by Dana Aonofriesei. She offered a look into how we need to pay attention to quality in production monitoring. We loved her alert system where the alerts have the status “Pending”, “Researching” and “Solved” to help manage the alerts and give better visibility. In addition, we really liked how her system automatically assigns bugs by “keywords”.
  • Yes, we can. Integrating test automation in a manual context by Andreas Faes. Based on his experience, he talked about implementing test automation processes in his company, up to the point of how developers are using code created by QA (dev in test) to test his developer code, similar to TDD but with tests driven by QA. This is something that we will be looking to apply in our own teams.

Read more

DjangoCon Europe 2018

June 26, 2018

June 26, 2018 by Miguel Ángel Moreno

DjangoCon Europe 2018, the European conference for the Django framework, was held this year in Heidelberg, Germany, from May 23rd – 27th. Professionals from around the world gathered together to enjoy a collaborative environment with talks given on a variety of topics, from philosophical issues, to technical details.

Ebury adopted Django a few years ago now as part of its core technology stack and this conference is always great to look at future opportunities.

Read more

Miguel Torres
Lead Front-end Developer

Introducing huha.js: Analysing User Experience with Javascript

June 22, 2018

June 22, 2018 by Miguel Torres

We love building great products, but a product would be completely useless if it is not properly designed for the people who are meant to use it. This lack of efficiency impacts the user experience (UX) of the solution. But, how can we achieve a good UX when developing a product? Is there a way that we can measure user performance objectively?

By trying to answer these questions, we realised there aren’t any cheap and easy-to-use tools ready for any member of our team. So, since we have some experience in things like building software, we decided to develop our own tool.

We are glad to introduce huha.js, a Javascript framework that is intended to measure the usability and user experience in an automated way, considering the limitations of the model and best practices.

In this post, we would like to share how it was built, in order to get fast and detailed feedback on user experience and be able to provide support to a highly iterative agile development practice.

Read more

Queue tasks in Celery after database commit – Introducing django-transaction-hooks

April 18, 2018

April 18, 2018 by antoniopaez

At Ebury, we use Django and have followed an ongoing upgrade path from 1.3 to 1.5 to 1.7. During that time we have had an issue that was messing with us. You might be familiar with it.

We use celery for  executing asynchronous tasks and Django is our framework with PostgreSQL database.

The issue occurs when an asynchronous task makes use of an object that has been just updated, or  created. There is a dependency with the database, the object might not have the updated status when the asynchronous task starts, or not even exists yet.

We are now able to utilise the  library django-transaction-hooks, which works with Django 1.6 through 1.8, and has been merged into Django 1.9+.

What is important with this library is that adds the event “on_commit” to manage timing with database transactions. So, we  can use this for scheduling when to queue tasks for celery workers. The main advantage comes when we want to queue using an object created into an atomic transaction. Consider the following example:

Read more

Ebury Chameleon as an example of a Design System

March 16, 2018

March 16, 2018 by Carmel Hassan

How to build a design language that works across teams and platforms

Invision acquired, UXPin released Systems, and Uber, IBM, and Salesforce are examples of companies who have decided to change the way of designing digital products.

They all have one thing in common: using Design Systems as a way of creating outstanding user experiences.
Read more

Javier Vázquez
Salesforce Developer
Miguel Torres
Lead Front-end Developer

Security in JavaScript: An AmsterdamJS story

July 18, 2017

July 18, 2017 by Miguel Torres

Given that security is so important for our applications, then as front-end developers, why are we we so intimidated when we have to secure our projects? How can we easily improve the security layer in our own JavaScript code?

I recently attended the 2017 AmsterdamJS Conference 2017, where I met Ingrid Epure. I would like to share some useful tips from her workshop, The Art of Keeping Your Application Safe.

Read more

TrailheaDX 2017 highlights

July 12, 2017

July 12, 2017 by Yaiza Bailén

TrailheaDX is the Salesforce developer conference. It was held in San Francisco on the 28th and 29th of June, in the Moscone West Center. The number of attendees has quadrupled from last year, with people coming from all around the world, as my colleague and myself traveled from Málaga (Spain).

This conference was born after the demands from Salesforce developers of having their own event. It is true that there is a zone at Dreamforce for developers, but that was not enough for us, and finally our demands were listened to and Salesforce created this amazing conference.

One thing to note about TrailheaDX is that the people giving the talks are product managers, directors or engineers working directly with the products, so you have first hand information.

There were more than 180 sessions to cover multiple and diverse topics. 3 key areas led the whole conference and were highlighted during the opening keynote with amazing demos run by Leah McGowen-Hare (Director of employee and Trailhead content strategy) and Sarah Joyce Franklin (SVP Dev Relations & DM Trailhead). The demos are already online, check this powerful demo of Einstein and this one about Salesforce DX both run by Leah McGowen-Hare, and also this one about Platform Events run by Sarah Franklin.

Leah McGowen-Hare and Sarah Joyce Franklin running demo at Opening Keynote
Leah McGowen-Hare and Sarah Joyce Franklin running demo at Opening Keynote

Read more

Salesforce DX Pilot – first impressions

June 28, 2017

June 28, 2017 by Yaiza Bailén

At Ebury, we use Salesforce as our CRM but also as a reconciliation platform for our lending business; to manage our credit line requests, our margin calls, and our onboarding (KYC, AML) processes. But since standard functionality is not enough for us, we have a dedicated team specialised in that builds customisation and applications for our different teams within the company. Our goal is to use this versatile framework to build features that make our sales process quick and effective, and to help our Operation teams to be focused on what is really important for us, our clients, and let the system take care of the rest.

We applied to be one of the lucky members to be part of the Salesforce DX Pilot and we were selected! Salesforce DX Pilot started on the 22nd of February and it is still going on, but I wanted to share with you my impressions so far.
Read more

Miguel Torres
Lead Front-end Developer

How we created our payments and capabilities map with CARTO

June 16, 2017

June 16, 2017 by Miguel Torres

Recently, we have built out a cool interactive map displaying the payments and capabilities coverage of Ebury for our corporate website using CARTO.

We will walk you through all the stages of development that we made and point you at the source code of our project GitHub.

By applying the micro-services philosophy, we decided to develop it in a separate project, so we began to analyse the tech stack to be used.

We took a look at tools like Google Maps or Leaflet, which are great for displaying maps, but it was not easy to display the data in the way we wanted. We then played around with D3.js, a great library for visualising data. However, it was not straightforward to implement a map with standard controls such as zoom or the drag feature.

Finally, we found CARTO that offered the best functions out of all of the options which made it super easy to create this map.

Read more