It's a variant on the perlin noise algorithm. I don't actually know if this particular algorithm exists, because I designed it on the fly, but it's possible it has a name and I just don't know it.
A random number generator picks unoccupied tiles and generates some number of mountain peaks, then pops each peak up an elevation and generates a random bounded number of tiles hugging the peak at a decremented elevation. All of the tiles are then popped upward and new peaks and "hugging" tiles are populated until the whole map reaches a predefined total land mass. Any blank tiles are then turned into ocean tiles.
I decided I'm going to do a massive redesign though, because I don't like how the mountains are all strictly cone shaped and the overlaps are a little messy. Also, there are random swaths of tiny oceans dotting the interiors of some of the terrain, and this is a problem because each water tile is going to track salinity to have a dichotomy between fresh and salt water. Having tiny salt seas would make programming river and lake generation, as well as general evaporation, a nightmare.
So I'm probably going to use a similar method, except place checks for nearby peaks and try to smoothly merge the two mountains. This will give the greater topography a more realistic look too. I think I'll just do this until every tile contains a land, then generate oceans to fill the lowest elevations. It'll be an approach which better conforms to the look of nature, but it's going to be a giant pain in the ass.