You do not need to be a citizen to serve. Also when you get out these days with an honorable discharge, you are still not a citizen. They have to go through the same process to become a citizen if they want to be one.
Though it is streamlined a little. A Co-worker just did this last year. He was brought here when he was 9 and joined the Army at 18. did 4 years and took his test last year.