What's the coding job like in oil companies?

In summary: I don't know what to call it...maintenance on the side while I was working on the algorithms. I think it was more important to be able to make changes quickly and efficiently.
  • #1
CloudyTrees
17
0
For those who have worked in oil companies or finance companies as coders, are your work over there have more emphasize on algorithm design/analysis or class/library creation/maintenance? Forgive me if this is a stupid question as I don't have much experience in writing codes. And I understand that these two may be inseparable, and that specific-job-dependent.

Some background information why I ask this:
I'm graduating in about a year or so with a PhD in theoretical cosmology from an in-famous university. After seeing what the graduates from my department has gone through, I finally realized that the hope of finding any postdoctoral positions is minimal, globally. Therefore I began reading some books on coding such as C++ and algorithms, since the oil and finance companies that require these skills are the places most likely to hire physics phds.

I was recommended the book Thinking in C++ by my friend. However, now that I've finished the first volume, it seems to me that this book is oriented towards the topic of class/library design. So this brought me to wonder what the work in the real world feels like. Since I would have a physics degree, I imagine that algorithm design would constitute a greater part of daily jobs if those companies would ever offer me a job.

Thanks.:confused:
 
Physics news on Phys.org
  • #2
CloudyTrees said:
For those who have worked in oil companies or finance companies as coders, are your work over there have more emphasize on algorithm design/analysis or class/library creation/maintenance?

Everything. Different coders do different things, and all the managers care about is that everything works.

Therefore I began reading some books on coding such as C++ and algorithms, since the oil and finance companies that require these skills are the places most likely to hire physics phds.

On the other hand, I got my first oil company job because they were looking for a Fortran guru. You see, they had some code from the 1970's that needed to be integrated into a new system. But knowing C++ didn't hurt. Curiously, the part of the company that I worked in didn't use any really complicated algorithms (i.e. the most complex thing that I did involved algebra) and the complicated algorithms were done in some different part of the company.

What's really funny is how oil companies used algorithms. A lot of the algorithms involved calculating some highly complicated PDE's. However, the hard part is that the people in the field typically had only a high school education, so how do you set things up so that people in the field could do PDE calculations. What happens is that you use the PDE's and then calculate "chart books." These are paper calculators that graph the PDE results in a way that someone with no math knowledge can calculate correction factors.

The interesting thing was that when it came time to put those calculations into a computer, you'd think that people would have the computer calculate things with the original equations. But what ended up happening was that we tended up doing curve fits against paper charts and then putting those into our system. Part of the reason is that in many situations, the correction factors were for an instrument that was manufactured by a competing company, and they weren't about to give us their original algorithms, but the chart books were public information. Also getting information from our own company, was a challenge.

And that this was around the time that we were starting to do business in Russia and China and Russians and Chinese do geological processing in a different way.

So this brought me to wonder what the work in the real world feels like. Since I would have a physics degree, I imagine that algorithm design would constitute a greater part of daily jobs if those companies would ever offer me a job.

A lot of work in the corporate work is "whatever needs to get done" type of work. I ended up doing a lot of work on GUI design and database work. The important thing is to be flexible. Whatever needs to get the job done gets done and if you don't have the skills to do what you are assigned, then you figure out how to get those skills.

The other thing is that some of the skills that aren't highly valued in academia become extremely important in industry. Teaching assistant and classroom experience is extremely valuable in industry.
 
  • #3
Thank you, twofish-quant, for this much information and sharing with us your stories!

On the other hand, I got my first oil company job because they were looking for a Fortran guru. You see, they had some code from the 1970's that needed to be integrated into a new system. But knowing C++ didn't hurt.

Actually I sort of learned a bit of Fortran when I first came into this group for using the CosmoMC for optimization in some cosmological parameter space. But it was a long time ago so I basically forgot all the details. I think I'll try to go through that again.

What happens is that you use the PDE's and then calculate "chart books." These are paper calculators that graph the PDE results in a way that someone with no math knowledge can calculate correction factors.

I guess that's one major difference between research in academia and projects in industry. In academia, it's kind of like an insider game, where it's your own problem if you don't understand the "language". But in industry, a large part is for generating end products that can be used by others with no pro-knowledge.

Also getting information from our own company, was a challenge.

Though I knew there's politics happening around within companies, I actually didn't expect that!

The other thing is that some of the skills that aren't highly valued in academia become extremely important in industry. Teaching assistant and classroom experience is extremely valuable in industry.

Then it might turn out to be a good news for me as I work as TA for the whole five years of my graduate study!:bugeye:
 
  • #4
CloudyTrees said:
Actually I sort of learned a bit of Fortran when I first came into this group for using the CosmoMC for optimization in some cosmological parameter space. But it was a long time ago so I basically forgot all the details. I think I'll try to go through that again.

One thing that makes job hunting Kafkasque is that you never know what the employer is looking for (and sometimes the employer isn't sure what they are looking for).

But in industry, a large part is for generating end products that can be used by others with no pro-knowledge.

The other difference is that in industry, things have just got to get done. For example, I could be a totally incompetent salesman, but if something has to be done today, and there is no other person to do it, then you need to do the best you can with what you have.

In academia, you have the option of not doing things. If you don't have competent Java programmers, then you just don't program things in Java. In industry, you often are in a situation where you *must* do something and do it quickly, and if you don't have competent people to do it, then you make do with what you have. If some Java code has to get fixed today, and I don't know Java, I learn and learn quickly.

Though I knew there's politics happening around within companies, I actually didn't expect that!

Everything is politics. One other difference is "politics" isn't considered a dirty word in industry. A lot of running a company involves convincing people to do or not to certain things and understanding why people do or don't do certain things. Every technical decision in business has some political aspect about it. Do we write our own library or use libraries from Microsoft or use some open source library? That's fundamentally a political decision.

Then it might turn out to be a good news for me as I work as TA for the whole five years of my graduate study!:bugeye:

Which should be a prominent part of your resume under experience.
 
  • #5
twofish-quant said:
In industry, you often are in a situation where you *must* do something and do it quickly, and if you don't have competent people to do it, then you make do with what you have. If some Java code has to get fixed today, and I don't know Java, I learn and learn quickly.

I guess that's why you always said that during interviews oftentimes the companies are not looking for the best but rather trying to avoid the worst. This transition of working-style is probably going to take time for people like me who have spent a long time on the theoretical side.

Which should be a prominent part of your resume under experience.

Thanks for pointing that out! I never though that being a TA would possibly help me landing a job somehow, since I've always dreamed about finding research positions in academia, where lecturers are implicitly assumed to be "inferior" in many cases. No offense to the lecturers but this does seem to be consistent with what I observe: some meetings in my apartment do not welcome those lecturers. I guess that's the politics and power-structure in academia.
 
  • #6
Pretty interesting story two-fish!
 

1. What are the main responsibilities of a coding job in an oil company?

The main responsibilities of a coding job in an oil company may vary depending on the specific role and company. However, some common responsibilities may include developing and maintaining software applications, analyzing data, and creating technical solutions to improve efficiency and productivity within the company.

2. What programming languages are commonly used in coding jobs in oil companies?

The programming languages used in coding jobs in oil companies may also vary, but some common languages include Python, C++, Java, and SQL. It is important for a coding professional in this industry to be familiar with a variety of languages to be able to handle different tasks and projects.

3. Is there a high demand for coding jobs in oil companies?

Yes, there is a high demand for coding jobs in oil companies as the industry continues to rely heavily on technology for various operations and processes. With the constant advancements in technology, there is a need for skilled coding professionals to develop and maintain software systems.

4. What skills and qualifications are needed for a coding job in an oil company?

To work in a coding job in an oil company, one must typically have a degree in computer science, software engineering, or a related field. In addition, strong programming skills, attention to detail, and the ability to work well in a team are essential. It is also beneficial to have knowledge of the oil and gas industry.

5. What are the career growth opportunities for coding jobs in oil companies?

Coding jobs in oil companies offer various career growth opportunities, including the potential to advance to more senior coding positions or to move into management roles. With the increasing importance of technology in the oil industry, there is also the potential for these professionals to branch out into other related industries.

Similar threads

Replies
13
Views
2K
  • STEM Career Guidance
2
Replies
39
Views
3K
  • STEM Career Guidance
Replies
2
Views
2K
  • STEM Career Guidance
Replies
25
Views
3K
  • STEM Career Guidance
Replies
3
Views
1K
  • STEM Career Guidance
Replies
14
Views
2K
Replies
127
Views
16K
  • STEM Career Guidance
Replies
18
Views
2K
  • STEM Career Guidance
Replies
3
Views
1K
  • STEM Career Guidance
Replies
30
Views
5K
Back
Top