$\DeclareMathOperator\GL{GL}\DeclareMathOperator\PSL{PSL}\DeclareMathOperator\PSp{PSp}\DeclareMathOperator\PSU{PSU}$Background:
A representation $ \rho: G \to \GL(V) $ of a group $ G $ on a (complex) vector space $ V $ is said to be irreducible if there are no nontrivial invariant subspaces under the action of $ G $. A tensor product of two irreducible representations $ \rho_i: G \to \GL(V_i) $, $i=1,2$, is a representation on the tensor product space $ V_1 \otimes V_2 $, defined by $ \rho_1(g) \otimes \rho_2(g) $ for $ g \in G $.
In some cases, this tensor product representation $ \rho_1 \otimes \rho_2 $ can itself be irreducible.
Examples:
If $V_1$ or $V_2$ is one-dimensional, then $ \rho_1 \otimes \rho_2 $ is irreducible.
Let $G$ be the product $ G_1 \times G_2 $. If $ \rho_i $ is an irreducible representation of $ G_i $, then the representation $\rho_1 \boxtimes \rho_2 = (\rho_1 \boxtimes 1) \otimes (1 \boxtimes \rho_2)$ is irreducible for $ G_1 \times G_2 $.
To avoid such straightforward examples, let us assume that $G$ is a non-abelian finite simple group and $\rho_i \neq 1 $. Surprisingly, such phenomenon is still possible in this case, but quite rare.
It occurs just on $10$ (among $204$) such groups of order less than $2.7\times 10^8$ (see the computations in Appendix), namely,
$$\PSp(4,3), \ M_{12}, \ A_9, \ \PSp(6,2), \ M_{23}, \ \PSU(5,2), \ 2F(4,2)', \ O_+(8,2), \ ^3D(4,2), \ M_{24}.$$
More specifically, for the alternating groups $A_n$, with $5 \le n \le 21$, this phenomenon occurs just for $n=9,16$, with $(\dim(V_1),\dim(V_2))=(8,21), (15,12012)$, respectively.
For the sporadic groups, it occurs for $9$ ones (among $26$), namely,
$$M_{12}, \ M_{23}, \ M_{24}, \ Co_3, \ Co_2, \ Th, \ Co_1, \ F_{3+}, \ M.$$ Warning: This last list differs from (the complement of) the list in this review mentioned by Nick Gill in this comment.
Question: For which non-abelian finite simple groups this phenomenon occurs? more specifically, for which alternating groups $A_n$? if and only if $n$ is a square? and $\dim(V_1) = n-1$?
My laptop was not able to check up to $n=25$.
Computations
For general non-abelian finite simple groups (we know that we can avoid $\PSL(2,q)$, see here):
gap> simpnames:= AllCharacterTableNames( IsSimple, true, IsAbelian, false, IsDuplicateTable, false : OrderedBy:= Size);
gap> for nam in simpnames do if Size(nam)<3 or List([1..3],i->nam[i]) <> "L2(" then ct:=CharacterTable(nam); Print(nam," ",Size(ct)," ",c,"\n"); Phenomenon(ct); fi; od;
...
U4(2), M12, A9, S6(2), M23, U5(2), 2F4(2)', O8+(2), 3D4(2), M24, ... the list should be incomplete after, because AllCharacterTableNames contains finitely many simple groups
For the alternating group $A_n$, for $5 \le n \le 21$:
gap> for n in [5..21] do Print(n,"\n");; ct:=CharacterTable("Alternating", n); Phenomenon(ct);; od;
...
A9, A16
For the sporadic groups:
gap> spornames:= AllCharacterTableNames(IsSporadicSimple, true, IsDuplicateTable, false : OrderedBy:= Size);;
gap> for nam in spornames do ct:=CharacterTable(nam); Print(nam," ",Size(ct),"\n"); Phenomenon(ct); od;
M12, M23, M24, Co3, Co2, Th, Co1, F3+, M
Script
LoadPackage("ctbllib"); LoadPackage("atlasrep");
Phenomenon:=function(ct)
local irr,r,L,i,j,k;
irr:=Irr(ct);
r:=Size(irr);
for i in [2..r] do
for j in [i..r] do
if IsIrreducible(irr[i]*irr[j]) then
Print([i,j],"\n");;
fi;
od;
od;
end;;