I have just graduated from college and have about 2 months time before I start working at the company. I have experience in C, C++, Java and a bit of Android (developed an app last summer, stopped working on that later). I just want to learn something new while improving on my basic C , C++ and Java skills.

I really need some advice on what I should start learning so that I will be able to work on whatever is given when I start my job... or in the sense that helps me improve from my present level... or that helps me understand things much better, assists me in getting a good understanding of things, etc.

Questions on Programmers Stack Exchange are expected to relate to software development within the scope defined by the community. Consider editing the question or leaving comments for improvement if you believe the question can be reworded to fit within the scope. Read more about reopening questions here.
If this question can be reworded to fit the rules in the help center, please edit the question.

6

Seems like a question you should have asked your employer during the job interview.
–
Rob KennedyJun 4 '11 at 17:45

1

"What should I learn next" questions that are asking for specific technologies to learn are off-topic here, but I think treating this question as "this is how you'd approach preparing for a new job" has potential. I see Thomas Owens already took that approach in his answer.
–
Anna Lear♦Jun 4 '11 at 19:14

2 Answers
2

Since you are entering a position, I would talk to the company that has hired you and try to learn as much as you can about the technologies and tools used by the company. Figure out what version control system, bug tracking tools, unit test frameworks, IDEs, GUI toolkits, and so on. You won't be able to learn everything before you start, but you can definitely read about them and play around with some of them. It would help you hit the ground running at work.

Maximizing the value for both yourself and your company would be the best route here. It'll help you hit the ground running at work, and show your new company that you have some initiative and personal drive.

An alternate approach would be to learn your domain. I'm not sure what industry your company is in, but you could take a look at the current trends in that industry. Find out not only the technologies used by the company you are currently working at, but look at the leaders in the industry and see what kinds of technologies they are using. You could take a look at their software or perhaps browse through their job postings and see what they are looking for.

This would allow you mobility within your industry of choice, especially if you plan on spending a lot of your career within this industry, regardless of what company you are working for. It would also allow you to make suggestions to your company as to possible solutions to various problems that you might, if you are proficient enough with various tools and technologies that are of use in your industry.

Depends. As a just-out-of-college applicant, my advice is to prepare for your new job in the non-tech sense. Consider reading some articles regarding transitioning from the academic to professional world, how to fit in w/ the team, "soft" skills like communication, etc. The tech focus will come later and, early on, it's unlikely that your employer will expect you to understand specific technologies (though your capacity to learn those technologies is expected).

If you were an experienced dev, my answer would be different. For eg, prior to a previous job, I read up extensively on a technology I knew I'd be using (regarding a specific RDBMS). I recommend doing that if you know before-hand what you'll be doing, & esp if you're already "an experienced developer."