SFML is able to handle a lot of draw calls and since entities are usually relatively rare compared to static objects, it's from my point of view questionable if a vertex array "optimization" would work well. Plus entities are mostly "dynamic", so they are in constant change in one or the other way, so the question is at one point does the "optimization" out-weight the additional overhead and limitation in code creation. A final answer to this reasoning can only be given through an implementation with testing etc.
1:Reconstruct the whole array each time that is done
2:Have empty holes in VertexArray and keep track of them and when entity is added fill them up.
this will most likely be a vertex array holding first index of empty VertexArray position.
You could also think about different data structures/algorithms that operate on an array, e.g. if you sorted the entity vertices based on how long something gets used, thus you could ignore the first part of an array since they'd never get removed etc, but again this needs a lot of thinking, otherwise the overhead will be larger than simply removing stuff.
That being said, id like to get ideas from a tutorial on Entity manager using sfml.
I went digging but i think the name of what i am looking for is not called "Entity manager".
You might also want to look at
Component Systems, they are a different approach than the Object Oriented Systems, other than that, entity systems are really an abstract concept of which there are many, many tutorials on the internet. From there it's really not that hard to implement it with SFML, after all SFML is just a toolbox so you can create whatever you imagine.