DFT of Sinusoid Peaks
What you understand is right. The second peak is the negative frequency component. I guess what your professor meant is that the Fourier transform of a sine wave is theoretically perfect Dirac $\delta$ function, and the discrete Fourier transform of a sine wave is a Kronecker $\delta$ function, but in your implementation, it's two peaks instead of two $\delta$ impulse.
The problem is the relationship of the frequency of sine wave and FFT size. As we know the frequency resolution of FFT is
$$
\Delta f = \frac{f_s}{N}
$$
where $f_s$ is sampling rate and $N$ is the length of FFT.
The FFT results in perfect $\delta$ only when the sinusoid frequency is exactly integer multiples of $\Delta f$.
In your case $\Delta f=15.625$ Hz, try something like 125 Hz and see what happens.