Landing a position will depend on the project so this is case by case. On the DOD side, if there is a software engineering position available on a project, HR will match your resume with the requirements for the job so make sure you have the correct experience/knowledge with the keywords in the job posting. Then you will most likely be phone screened by HR then brought in for an interview. There will not be a written test (although there should be), but technical interviews will occur and will vary on a project by project basis. Basically, the Engineers on the project will be asked to interview you so depending on the Engineer it could be highly detailed / highly technical or not.