Hi,
I'd suggest shop=* tags on on a connected front node on the building=* way or inside the building area would both work. My personal style is to add shopfront tagging to a node on the building way - not due to StreetComplete or other phone survey tooling. 

OSM uses a geospacial database so having the shop=* on a building=* node means the two are connected.

Having two separate nodes (as here) is not good, as the shop=* may be outside the building area meaning the connection is broken.

Looking at my survey of the area (below), there is significant residential building use above the shops, so the shop=* isn't good on the building=* way (i.e. the whole building is not a shop).

Generally, I'd suggest the shop=* is on the largest area possible to denote the whole usage (e.g. single purpose building=*, or even surrounding landuse=retail) and tie features together (e.g. supermarket + car park + fuel station).

https://www.mapillary.com/app/?pKey=464923318968363
Happy Mapping,

James