Share this Job
Apply now »

Scientific Computing Software Developer


Clinton, NJ, US

Company:  ExxonMobil

Job Role Summary

The Scientific Computing Software Developer has the opportunity to contribute to state of the art research projects through the development of computational software. The Scientific Computing team is responsible for developing software for the High Performance Computing and Windows platforms. This Software Developer position will be located in Clinton, New Jersey, and will report to the Supervisor of the Scientific Computing Organization within Research & Engineering IT.

About Us

Scientific Computing is focused on harnessing computational power in order to solve complex problems across research domains. A software developer working in this area is expected to have the curiosity and ingenuity required to quickly learn a knowledge domain well enough to interact effectively with ExxonMobil experts in that domain. Our team members have diverse backgrounds in computational sciences. Research domains include, but are not limited to: Data Analytics & Optimization, Big Data, Bioinformatics, Geoscience & Physics, Computational Mechanics, Chemical/Mechanical/Civil/Electrical Engineering, and Artificial Intelligence.

Job Requirements
  • Major in either Science or Engineering degree with strong computational background, excellent analytical/problem solving skills, and passion in learning as well as in programming
    • Examples of Science and Engineering degrees are Computer Science, Computer Engineering, Chemical Engineering, Computational Biology, Mechanical Engineering, Electrical Engineering, Applied Mathematics, Computational Chemistry, Physics, etc.
  • Knowledge and/or experience in the following required:
    • OS:  UNIX/Linux and/or Windows
    • Languages/Libraries: Python, C/C++, and/or C#
    • Software development Tool Chains (e.g. make, Git, Visual Studio, TFS)
    • Ability to Profile/Debug using tools (e.g. gprof, gdb, Intel Suite, VS Profiling)
    • Knowledge of a Visualization Tools (e.g. gnuplot, matplotlib, R, pandas, WPF, Infragistics)
    • Other:  Software engineering principles, parallel computing paradigms (e.g. shared/distributed memory), understanding performance and analyzing algorithm complexity, experience with multiple compilers
  • Self-motivated and driven to learn
  • Works well in a team environment with Researchers and Scientists
  • Good verbal and written communication skills for effective collaboration
Preferred Knowledge/Skills/Abilities
  • Knowledge and/or experience in the following preferred:
    • Libraries/Frameworks:  MPI, BLAS, LAPACK, OpenMP, Matlab
    • Knowledge of distributed computing paradigms (i.e. Hadoop)


Alternate Location:  

ExxonMobil is an Equal Opportunity Employer.  All qualified applicants will receive consideration for employment without regard to race, color, religion, sex, sexual orientation, gender identity, national origin, protected veteran status, or disability status.

Nearest Major Market: New Jersey

Job Segment: Developer, Scientific, Engineer, Electrical, Computer Science, Technology, Engineering

Apply now »