3 exciting jobs that use programming

When we think of jobs that use coding we tend to think of Software Engineers at a big tech company. But there are many more options than that — and some of them might surprise you!

Helping electricity companies incorporate solar power into the electricity system is the role of Tarek Elgindy, number 3 on our list.

Being able to code is a highly desirable skill in a wide variety of industries. We’ve interviewed some cool people from interesting and unexpected fields, who regularly use coding in their roles.

1. Equity Analyst

Lisa Fedorenko: Montgomery Investment Management

Lisa Fedorenko

What does your role involve? I analyse companies trading on the ASX to get a sense of their true value. I use this research to make recommendations on which companies are priced cheaply and we build equity positions in those businesses on behalf of investors in our fund.
One of our strategies is a quantitative strategy that’s written in Python. This filters companies on certain quality and financial inputs to decide which companies should be bought and sold.

What is your favourite part of your job? I love learning — and my job is to learn as much as possible about a range of businesses in all sorts of fields, it’s extremely satisfying.

How did you end up in your current role? My first job out of university was in research sales on the trading floor at Credit Suisse (where I helped write some VBA code for some trading analysis). This taught me a lot about equity markets and introduced me to a range of investment strategies and incredible people. I changed roles to do more in-depth analysis in the styles I liked with a great team of people.

What languages do you use? In my current role, Python, and in my last a bit of VBA, but a much wider range in my extra-curricular tasks and university days. If you’re looking at finance careers, it’s worth noting that there are many quantitative funds that use Matlab, and complex trading algorithms can be written in anything from Java to C.

Where did you learn to code? At uni when my friends coerced me into taking up advanced computer science classes … I was convinced hardware was against me and it would never work out. But — they were right, I loved computer science and ended up tutoring it by the end of my first year.

What did you study at university? Bachelor of Commerce, Bachelor of Science (Adv. Mathematics) — majored in Advanced Mathematics, Computer Science and Econometrics

Anything else you want to add? Coding is one of the most useful skills I’ve learnt. It teaches you a rational way of thinking that helps you analyse complex problems. It helps you be more efficient and introduces ways to automate repetitive tasks — which saves a lot of time. It’s an incredibly employable skill and a super useful life one too.

If you are interested in learning more about Lisa’s work, you can read her blog here.

2. Data Scientist

Carl Gabel: The Navigators

Carl Gabel

What does your role involve? I work for a Market Research consultancy, we help our clients make decisions such as whether to keep a product on the market, whether an advertising campaign should be launched, or what sort of customers should be the focus for marketing. To inform these decisions, I analyse vast troves of financial, transactional and social data. Coding is used extensively, initially to automate the process of receiving, managing and shaping the data, and then in the analysis where machine learning is used to identify optimal statistical models that enable us to be confident in our predictions.

What is your favourite part of your job? Workshopping with clients to distill broad objectives into answerable questions, that enable them to take meaningful actions. Working through the process with our clients really helps them understand the sort of decisions they are trying to make, and the value of making the correct decision.

How did you end up in your current role? I like exploring data and finding interesting relationships, and I like predicting the future. The mathematics is challenging and constantly evolving, providing me with new problems to solve every day. Beyond that, it’s nice to always be meeting new and fascinating people.

What language/s do you use? Day-to-day I use R, Python, a host of SQL derivatives, bash scripting and VBA. But depending on the project, I also use Java, C++, Pascal/Delphi, XAML, C#/VB.Net and Octave/Matlab.

Where did you learn to code? Initially self taught in high school; and then, mostly on the job.

What did you study at university? Bachelor of Mechatronic Engineering, Masters of Biomedical Engineering, Bachelor of Arts (Psychology & Philosophy)

Anything else you want to add? I hate doing boring repetitive stuff, but sometimes it just needs to be done — so I program a computer to do it for me.

3. Renewable Energy Engineer

Tarek Elgindy: National Renewable Energy Laboratory

Tarek Elgindy

What does your role involve? The group that I’m in does modelling of electrical networks to understand the best way to manage the integration of renewable energy into the power system. I help electricity companies develop algorithms for co-ordinating commercial and residential solar power. The physics of the electrical networks is complicated, and utility companies want to model these systems in software before implementing them, to make sure they work. I develop programs to run software that simulates the electrical grid and write code which allows us to model sophisticated power control strategies. 
Our group has been developing synthetic datasets of electrical networks as well as wind and solar power availability for different regions of the US. I have used machine learning algorithms create realistic electrical networks, solar profiles and solar forecasts that can be used to understand the impact of renewable power on energy systems. Some of these projects involve many people coding together to solve these large problems — often across continents.

What is your favourite part of your job? Developing algorithms and showing how electricity companies can reliably increase their support for solar power is extremely rewarding, especially as the work that we develop starts to be implemented in practice. I really feel like I’m on the cutting edge for making renewable energy a major part of our power system.

How did you end up in your current role? After I finished my honours year, I started a graduate fellowship at CSIRO working on optimising long term electricity network planning under uncertainty. At the end of the fellowship, I started a PhD in maths and computer science at Carnegie Mellon University in Pittsburgh, USA. I learned a lot of mathematical theory while I was there, but unfortunately did not do well in my qualifying exam (this is a test you take in US universities after about 2 years to determine if you can complete your PhD). I finished with a masters degree and started a summer internship, developing machine learning algorithms for solar forecasting at the National Renewable Energy Laboratory outside of Denver, Colorado. At the end of the internship I was offered a position as a full time engineer.

What language/s do you use? Most of my work is in Python, and I often integrate this with Linux shell scripts. I also have done several projects in R and C++ and use Matlab from time to time depending on the groups that I’m working with. Additionally I often use domain specific languages such as XML or SQL for manipulating datasets.

Where did you learn to code? I didn’t know how to program until I got to university. I started by reading a book on Java that a friend had given me. Although I did take several programming courses while I was studying, I learnt the most from participating the organised programming competitions while at university. These were competitions where teams of students were given several problems and would have to work together to solve and code them up over a few hours. These competitions were great because to do well we had to be “code fluent” so that we could program quickly and accurately. They were also lots of fun!

What did you study at university? Bachelor of Science, with a major in applied maths and minor in IT, and honours in applied maths.

Anything else you want to add? The combination of programming and maths is applicable to so many fields of study. I’ve used the same set of skills to develop algorithms for solar forecasting, data manipulation, workforce planning and electrical optimisation just to name a few. I have gained domain specific knowledge such as electrical components, solar power behaviour, or specific power systems software, but the skill of programming has allowed me to solve problems across these domains. I have found being a good programmer to be a very valuable skill and I would not be where I am today without it. There are so many problems for us to solve to work towards a sustainable future, and maths and programming will be absolutely necessary to solve many of these.