I'm about a semester away from graduating with a B.S. in Physics. While I have beome proficient in doing textbook problems and taking exams related to introductory classical physics and QM, as well as in pretty basic mathematical techniques (calculus, lin. algebra), I feel utterly unprepared to perform any actual job function. I have a certain amount of self-taught programming know-how, enough to get things done inelegantly, but certainly not any way comparable to the formal training CS majors get. I have a basic understanding of analog circuit theory, but again, I doubt it is enough for anyone to want to pay me to do anything over an EE major. I am confident in my ability to pick things up, given access to the proper learning materials, but why should any employer want to hire someone who will need to be further educated on the job? The prospect of me finding a job with my current skill set seems a little hopeless. I was involved in 'faculty research' last summer with a molecular biophysics lab, but all I ended up doing was technical gruntwork in Labview, and learned very little. Over the next semester I will be working with a professor involved in HEP and will hopefully learn something about the field, as well as work with ROOT framework. No publications to speak of. I do plan to go to graduate school, but not for a year or so due to having begun my physics major a year late and wanting upper-division physics courses to appear on my application transcripts. But I don't want to just sit around idle in the meantime. Anyone have any advice about the kind of jobs I should be applying to, given my situation?