One more or less systematic method which you might use roughly goes as follows. Let $X_1\cong\mathbb{P}^1$ denote the $j$-line.
- Describe the branched covering $f : X_G\rightarrow X_1$ combinatorially, via a triple of permutations $\sigma_0,\sigma_1,\sigma_\infty$ with $\sigma_0\sigma_1\sigma_\infty = 1$.
- Find equations for the "Belyi map" $f$ (including equations for the curve $X_G$).
Part 1 is rather straightforward: Let $\tilde{G} := \langle G,-I\rangle$. Let $\varphi : \mathbb{Z}^2\rightarrow(\mathbb{Z}/n)^2$ be the reduction map, viewed as an element of $\text{Epi}(\mathbb{Z}^2,(\mathbb{Z}/n)^2)/\tilde{G}$, where $\tilde{G}$ acts on the codomain. The group $\text{PSL}(2,\mathbb{Z})$ acts on this set. Let $\mathcal{O}$ be the orbit of $\varphi$. Consider the matrices
$$M_0 := \left(\begin{array}{ll} 1&1\\-1&0\end{array}\right)\qquad M_{1728} := \left(\begin{array}{ll} 0&-1\\1&0\end{array}\right)\qquad M_\infty := \left(\begin{array}{ll} 1&1\\0&1\end{array}\right)$$
The fundamental group $\Pi$ of $X_1^* := X_1 - \{0,1728,\infty\}$ is free of rank 2, generated by $x,y,z$ satisfying $xyz = 1$. Let $X_G^* := f^{-1}(X_1^*)$. Then the covering $f : X_G^*\rightarrow X_1^*$ corresponds, via the Galois correspondence, to the set $\mathcal{O}$ together with the $\Pi$ action where $x,y,z$ acts via $M_0,M_{1728},M_\infty$ respectively. In particular, the ramified points above $j = 0,1728,\infty$ correspond to the orbits of $x,y,z$ respectively, the ramification index being the orbit sizes. The permutations induced by $x,y,z$ are the desired $\sigma_0,\sigma_1,\sigma_\infty$.
Part 2 is much more subtle. My understanding is that there is an algorithm for this, but it is only really feasible for covers with relatively small degrees (e.g., less than 300). In practice there are a number of different techniques one can employ, some of which are described in this article by Sijsling and Voight.