因为 + [clause],所以 + [clause]
[subject] + 因为 + [clause],所以 + [verb phrase]
[clause],是因为 + [clause]
因为 introduces a cause and 所以 introduces the result. The cause comes first. English uses "because" or "so" but not both; Chinese keeps both, and the sentence sounds complete with them.
Either word can go on its own. 所以 alone is the everyday "so"; 因为 alone sets up the reason and lets the result follow after a comma.
因为 also answers a 为什么 question by itself.
所以 starts its clause. When the result has a subject, the subject comes after 所以.
When both clauses share a subject, it can go in front of 因为 and be left out of the second clause.
English often gives the result first: "I didn't go because it rained". In Chinese that order takes 是因为, and 所以 drops out.