I receive applications from students asking for internships, for thesis guidance and project assistant positions in scientific computing. All of my work involves computations and requires proficiency in working with computers and coding. Most students do not demonstrate any credible knowledge or background that is needed for such work. Here is some advice on what you can do to improve your chances of success in scientific computing.
You need to know some theory. Here is a list of books I recommend.
Learn a programming language really well, e.g., fortran, C/C++ and Chapel. I would recommend learning all three of these. (Matlab is not a programming language.)
Learn Python, which is great for scripting, data analysis and visualization.
Learn to work on Unix/Linux and the command line. Use a proper text editor like Vi/Vim or Emacs. If you have only worked on Windows, please do not write to me.
Learn to use some visualization tools like gnuplot, Paraview and VisIt. Python also has good support for visualization.
Take the many online courses being offered these days on scientific computing topics. Do all the assignments and exams and show me what grade you scored in the course.
Finally, send your cv/application in PDF format ONLY.
Show me some proof for all/some of the above in terms of actual code, results and project reports. In your CV, mention all the courses you have done in Physics, Applied Math, Numerical Methods, Scientific Computing, etc.
To work with me
The above advice is fairly general for anybody wanting to work in scientific computing, numerical solution of PDE, finite element methods, computational fluid dynamics, etc. If you want to work with me, you should be able to satisfy above requirements. In addition, you will have a better chance if you have worked with any of the following.