If $X, Y$ are schemes over a given scheme $S$, then the fiber product $X \times_S Y$ is the product of $X$ and $Y$ in the category of schemes over $S$.
A scheme $X$ is the same thing as a scheme over $\textrm{Spec } \mathbb{Z}$, since there is exactly one morphism of schemes $X \rightarrow \textrm{Spec } \mathbb{Z}$. Thus the product of $X, Y$ in the category of all schemes exists, and it is $X \times_{\textrm{Spec } \mathbb{Z}} Y$.
If $X$ and $Y$ are given as schemes over $k$, then $X \times Y$ probably means the category of schemes over $\textrm{Spec }k$, although to be precise one would normally write $X \times_k Y$ or $X \times_{\textrm{Spec } k} Y$.
This makes sense to write $X \times Y$ instead of $X \times_k Y$ for two reasons: first, if we are working in a category $\mathscr C$ with two objects $A, B$, then without further explanation, $A \times B$ should mean the product of $A$ and $B$ in the category $\mathscr C$. Thus $X \times Y$ should mean the fiber product of $X$ and $Y$ over $k$, since it seems your book is working in the category of schemes over $k$ at that point.
Second, if you are transferring over classical results from varieties into the language of schemes. If $X, Y$ are (classical) affine varieties over an algebraically closed field $K$, then $X, Y$ are the spaces of maximal ideals of their coordinate rings, and so the underlying set of their product $X \times Y$ in the category of affine varieties can be taken to be their cartesian product.
When you interpret $X$ and $Y$ as schemes $\tilde{X}, \tilde{Y}$ over $K$ (using all of $\textrm{Spec } K[X]$ rather than just $\textrm{Max } K[X]$), the product $\tilde{X \times Y}$ becomes the fiber product $\tilde{X} \times_K \tilde{Y}$.