For many actuarial positions, programming will likely be a big part of your job, especially in the early years. Although, since there is such a wide range of jobs that you could get, it’s really difficult to estimate how much you’ll need to do in the position you end up in.
What is programming?
When I was first getting into actuarial science, I had heard a lot about computer programming, but I never really understood 100% what it meant. Now that I’ve done it for many years, I fully understand it. And actually, it quickly became one of my favorite things about my actuarial position.
Basically, programming is just using a series of commands (called code) to tell the computer to implement a specific task.
For example, I’ve pulled some VBA code from something I’ve been working on recently. This code tells Excel to copy everything from a workbook called “Strategy Customization Questions” into the tab called “Survey Responses” of the workbook that I’m working in.
It may not seem like much (and this is just a small piece of a much larger piece of code) but this alone saves me about 10-15 seconds of an otherwise repetitive task.
Why do actuaries need to program?
There are two primary reasons that actuaries need to know how to code (or program).
Large amounts of data
First is because we’re always dealing with so much data. On any given project, we may have just 10 pieces of data for each policyholder. Or, we may have 100! It all depends on the project and what we’re trying to obtain from the data.
But, if we have 100,000 policyholders each with 10 – 100 pieces of data attached to them (ie gender, age, # of years insured) then you can imagine how difficult it would be to manage all the data and be able to get useful information from it.
So, if we wanted to calculate, for example, the amount of money the insurance company earned for each of those 100,000 policyholders over the last 5 years, we’d have to set up a complex Excel workbook that congregated data from several different sources, including the 10-100 pieces of data that we already have on each policyholder.
To do less than 10 calculations manually would be reasonable. But, since we have 100,000 policyholders it would take weeks of time for one person to manually accomplish this task. So, instead, that person could take 4-5 hours creating a code that could do it for them, saving tons of employee time and therefore company money too.
The second reason actuaries use programming is to automate recurring tasks that would otherwise need to be done manually.
For example, in valuation positions where you’re calculating actuarial reserves, the are lots of processes that need to be completed each month or quarter. So, rather than having to do those processes manually each time, it would be far more efficient to create a code that can run and do all the work for us.
Then, as the actuary, you’d just have to click a button and review the output of the code for reasonability and accuracy.
This saves tons of time which allows the actuary to be able to meet strict deadlines, it reduced mistakes, and it also gives the actuary more time to practice good due diligence and ensure that the results of their work seem reasonable.
My coding experience in actuarial positions
In my auto insurance pricing internship, I used a programming language called SAS. I primarily used SAS to query large amounts of data to ensure that I selected only the policies that met the criteria that I was looking for.
In my internship in an annuity pricing department, I did quite a bit of programming in VBA (used to create macros in Excel). This programming fell under the ‘recurring tasks’ type of programming because the company used an Excel workbook to create financial projections that would be sent to the policyholder.
In my first entry-level actuarial position in group insurance valuation, I was programming in VBA or in GGY AXIS at least 1-2 times per week.
In that position, I used VBA to automate monthly recurring tasks which cut down hours of my own time. There were also many cases where we had huge amounts of data that needed to be collected from several different sources and then combined in order to get the information/calculations that we needed.
GGY AXIS is a software program primarily used by life insurance actuaries in Canada, but it’s becoming more and more popular in the U.S. too. It’s a very powerful tool that allows us to input hundreds of pieces of data relating to policyholders, our investments, and all of our actuarial assumptions.
The output from AXIS can be a variety of things, but I primarily used to to calculate actuarial reserves.
Is programming hard to learn?
This is different for everyone. Some people catch on really easily, and others have to work really hard at it.
For me, it was pretty easy to catch onto but I did take 1 or 2 classes in a programming language called Python while I was in school.
The good thing is that once you pick up on one coding language, it’s fairly easy to apply your knowledge to other languages. Usually all the same commands are available, it’s just that the way to tell the computer those commands changes.
What programming languages do actuaries need to know?
There is one language that I would consider critical for aspiring actuaries to learn. That’s VBA.
Like I said previously, VBA is the language that is used in Microsoft Office programs, such as Excel, Word, and Access.
Since actuaries do so much of their work in Excel, VBA is likely going to be one of the most beneficial languages to know, especially in your early years. It’ll allow you to automate tasks to decrease your workload, and it’ll be extremely helpful in many projects you do as an actuary.
The secondary language that may come in helpful is Python. Personally, I’ve never used it so you can get away without it as an actuary, but if I knew the functionality that Python had, I suspect that I would have found places where it could have come in very helpful.
Where to learn these programming languages
There are two options for learning these. The free way and the paid way.
The free way is to sign up for a free month of premium access to Skill Share. Skill Share has tons of courses the guide you step-by-step how to learn both VBA and Python.
The other option is to purchase TIA’s technical skills course. This course teaches VBA, as well as other programming languages like SQL, SAS and R (you can learn those on Skill Share as well) but it doesn’t talk about Python unfortunately.
That’s OK though. You really only need to know one language. Employers know that it’s pretty easy to pick up on a second or third one.