I usually preffer smaller groups of players (3 normally, 4 max).
I currently have a adept, a rigger and a samie.
in my experience those numbers work best as you get time to develop in the personal lifes of the runners. One example that have inspired my was an episode of critical glitch podcast name "karma & nonsense". You get to play almost entire games in wich the players dont even do a run and can do a lot more solo scenes. One of my previous games i keep juggling on PC date with a fomori, another one fighting his way out his home infested with devil rats while the last PC was trying to get his bike fixed. Play a lot on this if you want.
For the balance side i would say that you dont need NPCs to fill "roles" but more adjust the game arround the players. In my games the party dont have a mage so i keep all magical threaths (astral & spirits out) and limit a lot what mage enemies (mostly throwing fireball) can do until the adept gets astral sight. They dont have a Decker so most matrix threats are out or at least with lower menace. Taylor the game to the roles the party can cover. Nothing in the rules say that they have to encounter everything in the game, so why include spirits if players cant touch them for example? so the players need a NPC to solve a situation for completion sake?
With the face my solution was nothing, i just let them suffer the disadvantages of not having a face and after 2 games the adept started putting points in social.