数据库可以单独学,向DBA方向发展,不过最好是学一些shell编程的知识,只要你对于自动化任务就非常好了,不过懂得一些编程语言的东西是最好了,最好是C/C++。不要所有的数据库都熟悉,就主要熟悉一个就好了,建议oracle,其他的只要有一定深度的了解就行了,一般学数据库的不多,不怎么容易被替代,英语比日语终于(对于IT的来说)
C++很深奥,慢慢学就行了,不要急功近利
一般在面试的时候大部分会问的都是一些很基础的东西,还有就是做过什么项目。因为以后肯定会从事项目的开发,所以对于软件工程的流程必须要有个大致的了解,了解一般软件开发的步骤。我当时学的专业是计算机科学与技术(本)和嵌入式软件工程(硕),在面试的时候基本都是问的一些很基础的C语言问题,比如声明对象和定义对象的区别,static和volatile的意思,另外还让我写了一段代码,看看有没有良好的编程习惯,比如说注释,代码的格式等等。嵌入式方面问的也是一些基础的问题,比如说I2C的协议内容,一些单片机的中断寄存器的标志位等等。
总之,要先打好扎实的基础,一些比较经典的基础书总得翻个3,4遍以上;养成良好的编程习惯,因为以后不可能你一个人写代码,而是一个团队合作,你写的代码要别人看得懂,另外在一些细节方面也要注意,比如算法的优越性,简洁性,代码的可移植性,复杂度要低,分配内存的时候不要太浪费等等。其次,就是多参加一些项目的开发,可以几个同学一起做,可以跟着老师做,看看一个软件的开发流程是什么样子的,心中有一个了解。