The year 2015 was without doubt one of the worst in living memory in France. It began on 7 January with the massacre at the offices of the satirical magazine Charlie Hebdo. Two days later, four people were killed in an Islamist attack on a Jewish supermarket in Porte de Vincennes, east Paris, and a policewoman died in another attack in Montrouge, just south of Paris. The year ended with mass slaughter on 13 November when Islamist gunmen and suicide bombers attacked the Bataclan concert hall, killing 130 people and injuring many more. By the end of 2015, France appeared to have slipped into a deep trauma that is not yet over.

Four years on, quiet commemorations of the 13 November attacks were held once again across Paris, led by the city’s mayor, Anne Hidalgo, and the interior minister, Christophe Castaner. But official ceremonies can never tell the real story of how people feel. Certainly, the atmosphere last week in my neighbourhood of Pernety, a mile or so from Montrouge, was muted.

“Time passes but you can never forget,” said the owner of a deli where I was buying lunch. No one in the shop dared to disagree, including his Arab customers. The newspaper Le Parisien put it best in its description of the attacks and their recent commemorations as “an open wound” that affects everyone who lives in Paris, whatever their religion or ethnicity.

This weekend also marks another anniversary – it is 12 months since the emergence of the gilets jaunes movement and events are being planned all over France to mark the occasion. The events of 2015 and the gilets jaunes phenomenon are not often considered in tandem, but there are multiple reasons why they should be. One of the legacies of 2015 has been a sense of fragile unreality, or “precarity”, one of the key words of the gilets jaunes movement. This feeling is also reflected in this year’s French bestseller Le Lambeau by Philippe Lançon, a survivor of the Charlie Hebdo attack who was disfigured and left for dead by his would-be assassins.

People observe a minute’s silence in tribute to the victims of the 2015 Bataclan attacks. Photograph: Lionel Bonaventure/AFP/Getty Images

The book has recently been translated into English with the title Disturbance, which is a good description of what has happened both to Lançon and, in a larger sense, to France after 2015. French life has been marked by a dislocated mood, a sense of uncertainty, which is articulated by Lançon in his search for a “normality” that now seems impossible.

Beyond such raw emotions are also hard political tensions and fears in France that are never too far from the surface. It is true the military presence on the streets of Paris and other big cities has now diminished, but there are still concerns about a resurgent Islamist backlash. In recent days, the French news channel BFM TV has warned of revenge attacks in France for the death on 26 October of Abu Bakr al-Baghdadi, the leader of Islamic State. Newly reformed intelligence services are monitoring French nationals returning from Syria or Turkey and “radicals” recently released from French prisons.

At the same time, since 2015, French political life seems to have undergone strange and unpredictable shifts, with new faultlines opening up in all directions. Arguably, the most surprising event in recent years has been the emergence of Emmanuel Macron as president of the republic. The consensus is that he is only president by default – it was the fear of Marine Le Pen and the far-right agenda of the Front National that propelled him to power in 2017, rather than any firm belief in his political ideas (which seem largely to be a form of Anglo-American laissez-faire capitalism).

The proof of this has been the rise of the gilets jaunes, which began last year as a protest against fuel prices but suddenly seemed to turn into a violent insurrection. This was partly because Macron, a former banker, was perceived as being the president of the rich and partly down to his personal style: he is aloof and patrician. The writer Emmanuel Carrère, who followed Macron closely on a tour of the French Caribbean, described his weird ability to charm and alienate an audience at the same time.

A gilet jaune demonstrator protests against rising oil prices and living costs near Marseille, 2018. Photograph: Sylvain Thomas/AFP/Getty Images

The revolt of the gilets jaunes is not, however, simply down to Macron’s personality. It is a direct response to his economic policies and the real financial hardship that exists in France outside the thriving big cities. The gilets jaunes come from towns and villages disconnected in every sense from the life of the cities, from employment opportunities, decent housing and even basic medical infrastructure.

For now, the violence seems to have subsided but the anger is still there. This is what brings together the various factions that make up the gilets jaunes: from the far right to the Breton nationalists to former communists, from farmers to factory workers to pensioners below the poverty line. They are the emblem of a country that is at least as fractious and uneasy with itself as pre-Brexit Britain.

To all appearances, the gilets jaunes and the immigrant youth of the banlieues, the breeding grounds for Islamism, seem to be very separate populations. But if there is anything that brings them together it is the sense that they are cut off from the real seats of power in France. Their powerlessness fuels their rage. In the meantime, the traditional parties of left and right seem unable to make sense of what is happening. Several commentators, most notably the academic and author Christophe Guilluy, have written that France has stumbled into a political vacuum and that the only possible winners can be the far right.

As part of the commemorations for the 2015 attacks, which Emmanuel Macron did not attend, he has called in a tweet for all French people to show their “unity”. But four years on from the horrors of 2015, the reality is that France is more divided than ever.

• Andrew Hussey is writing a book called Snobs, Rebels and Revolutionaries: The New Tribes of France

• This article was amended on 18 November 2019 to correct locations of two attacks, Portes de Vincennes and Montrouge.