Not many but things that can be a challenge:
Lack of availability - since you can't count on people to be online at the same time as you, especially starting out it can be difficult to adjust to a world where you just push everything as far as you can and then set it down compared to a typical environment where you'd have a desk to walk over to or a person to IM that was on the same hours as you and you could message them for an answer so you could keep going on something. As a whole the asynchronous work style is awesome but takes a little adjusting to at first.
Easy to be always on - With full time remote it becomes very important to set boundaries between work and life but also, with people spread around the world it's inevitable that you'll have some early morning or late night meetings that pop up that you need to attend. While it is rare and often avoided via recording meetings and sharing a collaborative notes doc, there are times when flexing your schedule for some late nights or early mornings is the simplest way to handle a problem and can lead to burnout if you let those type situations trickle over into never truly turning off from work.
Change - being a startup things are constantly changing and it can be difficult at times to keep up with all the changes and there are adjustments that seem to happen on a far more frequent basis than other more established companies. While not necessarily always a con, there is the potential that some of the things you may hold most dear about the company upon hire quickly adjust to something else and that may be difficult to handle for some. That being said, the core foundations of GitLab don't seem to be changing and this is a risk at any company, it's just more realized at GitLab due to the size/current nature of the company.