Do you work on legacy systems or prefer keeping up to work with the latest?

Do you work on legacy systems or prefer keeping up to work with the latest?

I recently attended an interview for the post of Web Developer in a company found at Moka. A recruitment agency looked for the job.

My aim going there was to understand more the local marketplace in terms of job demand. As the agency takes a fee from the eventual employee, if I wanted to change job, I will directly contact the company. Moreover, the prospective job location is too far from my house location, requiring a long commute.

The company itself is situated in a nice place and I have already worked there before. It's indeed an interesting place.

The first thing I notice is that the company has an open office space, quite small which makes it a noisy place to work with are many employees, even if they are silent. They have no carpets to reduce noise - simply walking can be distracting. I can however live with it because I've been working in such office throughout my career.

Before the technical test, the director explains to me about the company and their types of projects, which look interesting and professionally made.

I am, nevertheless, mostly concerned with the technology.

They have a Back-End department in France with the Front-End one off-shored in Mauritius. The Back-End team does all the heavy duty - from database management, to business logic and the implementation of custom features; while the Front-End team is responsible to change the default look to match the customers' designs.

Using jQuery and CSS to override PHP files sent from the server, they thus manipulate the UI.

This web development work pays. They have customers. So they stick to their current set of technologies, which for me seems outdated by at least 5 years. I learn these technologies at University during my undergraduate degree in 2011.

Photo by Carlos Muza / Unsplash

Nowadays, we have more sophisticated front end technologies such as Angular, Ember, React and Vue while back end mostly handle API requests. Monolithic technologies such as Ruby on Rails, Laravel or Django are still heavily used. Having to manage state manually with JavaScript (getElementById) on the front end is nevertheless a tedious and unnecessary work. That's why developers tend to use front end frameworks or libraries to automate state management.

Moreover, using only back-end languages prevent from having improved User Experience (UX) such as drag and drop.

As the state of the web continues improving, I prefer evolving with it instead of working on old technologies. Companies, particularly startups with interesting ideas tend to use them - and working on these sets of problems is more interesting than the old ones as they barely change once you learn them.

This company has plenty of customers even with their backdated technologies. This field evolves all the time. Lots of new tools solve existing, important and difficult problems such as state management so as we, developers, can instead of focus on delivering a project in time and with an improved UI as well as prototype to solve real problems.

As they already have customers with their systems, they cannot change their stack. That's another part of a company's innovative dilemma.