(For me), the company isn't big enough to justify a full time Software Architect. Also, generally Software Architects don't spend a lot of time (if any) coding.
I prefer the title Tech Lead over Senior Developer, because a Senior Developer could be someone doing the same job for several years (ie a mid level developer who has been there for a long time). A Tech Lead is responsible if something goes wrong.
A Tech Lead also has a mentoring component. Senior Developers don't necessarily have the communication skills to do this.