Ahmad was among hundreds of thousands of asylum seekers who have sought refuge in Germany since Chancellor Angela Merkel's decision on September 4th, 2015 to keep the country's borders open to people fleeing war and misery.
Overwhelmed by the sheer numbers of new arrivals that reached over a million in three years, Germany's refugee agency and legal system is running a massive backlog on asylum applications and appeals.
As a result, many migrants have found themselves still in a limbo years after they arrived, uncertain if they will be allowed to stay.
“I've been waiting, but nothing's coming,” he told AFP. Ahmad's initial asylum application was rejected in December 2016 by the Office for Migration and Refugees (BAMF).
But he promptly filed an appeal in January 2017. Since then, he has been waiting for Berlin's courts to decide.
Like the BAMF, the courts are overloaded. Some appeals are similar to Ahmad's, while others are seeking to extend their residency permits. In the most urgent cases, plaintiffs are seeking to obtain stay for deportation orders.
Critics blame mistakes or sloppy decisions made at the BAMF for the legal jam.
“They hired these people who are not qualified” to deal with the delicate mission of determining people's future, said Greens MP Filiz Polat.
As a result, more than one in two BAMF decisions ended up in a legal appeal in the first half of 2018.
At the end of 2017, 372,000 appeals were awaiting examination by the courts, four times more than in 2016, the government said.
In Berlin, “more than two-thirds of the cases have not yet been dealt with by the administrative court for asylum law,” the court said.
Amid the legal entanglements, migrants like Ahmad are left living in uncertainty.
“It's stressful. I can't live peacefully,” he said.
Migrants are granted temporary residency in Germany pending the final verdicts.
But Ahmad said these permits are for brief stays of three or six months.
Such short permits mean he is effectively locked out of the rental market as landlords want to see permits of at least a year.
For the last two years, Ahmad has shared a room of less than 20 square metres (200 square feet) with two other refugees in a shelter.
Their shared kitchen is upstairs and with communal living comes annoyances of “cigarette issues, promiscuity and noise”, he said.
Meanwhile, a bureaucratic delay elsewhere resulted in a failed Iraqi asylum seeker remaining in eastern Germany, where he allegedly stabbed a man to death in Chemnitz. The killing sparked xenophobic demonstrations.
The suspect should have been deported to Bulgaria – his first port of call in the European Union – but the administration failed to carry out the expulsion in time, according to Interior Minister Horst Seehofer.
Having missed the legal deadline, authorities had to reexamine his dossier from scratch.
Ahmad, a keen football fan whose mop of curls is reminiscent of Egyptian player Mohamed Salah's, dreams of signing up for training in nursing – a sector in which an ageing Germany has a chronic staff shortage.
While waiting for the court decision, he is trying to obtain qualifications that would allow him to get an apprenticeship in the sector.
To make ends meet, he works in the evenings, making cappuccinos in a snack bar.
Data suggests that some headway has been made in getting newcomers into the work force.
Some 290,000 refugees who arrived since 2015 have already found work, according to the employment agency.
The proportion of migrants still dependent on state aid has decreased by 36 percent between 2016 and 2017, it said.
And despite the long wait, Ahmad is determined to make it work in Germany.
“When I arrived in Germany, I didn't have an idea what I should expect. What counted for me was to flee Iraq,” Ahmad said.
“Now I know that my future is here.”