Real-life stories – Mark, Executive Director, Software Development

Mark is a Software Developer with a 35-year career in the Professional, Scientific and Technical Services industry.

A man wearing glasses against a chevron pattern background.

About this story

This article is based on an interview with a person that that has worked in their industry for at least 5 years (industry expert). In this article they are sharing their real-life career experiences. This article has been edited for clarity and consistency. Images of actors and different names have been used.

To learn more about this type of career, you can book an appointment with an industry expert

About Mark

Mark is an IT professional with 35 years’ experience who runs his own software development company. He says it’s an exciting career for those who can embrace technological change and continuous learning.

A man with glasses uses a mobile phone against a railing.

“The only certainty is that things will continue to change, particularly working in technology. I believe that the recent advances made in AI are a legitimate step change, as important as the introduction of the internet.”

How did you become a Software Developer?

Back in the 1980s computers ran on 8-bits and the Apple II was state of the art. My high school had a computer science elective which was my favourite subject. Like everyone else, I didn't really know what sort of job I wanted. I was tossing up between lawyer, engineer, and marine biologist (I liked to SCUBA dive). 

I went to a careers guidance centre and established that there were no jobs available for marine biologists. Being a lawyer seemed to involve reading and memorising a lot of boring case law. I also thought about getting a degree through the armed forces, but back then you had to lock in for a significant time after completing the degree.  

University of Sydney

1988

Graduated with BE (Electrical), BSc (Computer Science).

Royal Australian Navy

1988

Industry experience at the Royal Australian Navy Trials and Assessing Unit (RANTAU).

University of Technology Sydney

1996

Completed an MBA (Strategy).

Sydney, NSW

2000

Founded software company.

A university degree with hands-on experience

In the end I selected a double degree (Engineering and Computer Science). I selected the University of Sydney because of its reputation and location. The Engineering degree had a practical component which involved getting industry experience in the final year.

I picked up a role at the Royal Australian Navy Trials and Assessing Unit (RANTAU). This job was mainly writing code for a visualisation of the Navy's air defence exercises in FORTRAN 77.

While studying at university I enjoyed the practical components the most. Some of the lectures on Maxwell's equations were very dry! The MBA was paid for by my employer, which was great. This was the course that provided the most directly useful knowledge as I moved into a leadership role. 

I later studied winemaking because my wife and I had a vineyard in the Hunter Valley.

Why did you become a Software Developer?

Information Technology (IT) is a diverse industry. My experience is in development, controls, mobile, embedded systems, and AI (Artificial Intelligence).

The art of writing code

I have always enjoyed coding and building things, but I don't think everyone is suited to writing software. While you can learn the syntax and semantics of a programming language, there is also an art to writing concise, readable, and maintainable code.

Excellent career mobility

IT is a good foundation for career mobility, as you will often work across the entire organisation. To move up you need to focus on soft skills like leadership, communication, and planning. Moving up generally means moving away from day-to-day development and taking on broader responsibilities.

There are numerous specialisations within software development, from front-end and back-end development to data science and machine learning, cloud computing, and cybersecurity. Each area requires a unique set of skills and knowledge.

“The questions I’m asked most often at social events are ‘Can you hack into websites or social media accounts?’ and ‘Can you fix my [insert tech issue]?’”

What does a day in the life of a Software Developer look like?

When working in a corporate role I typically get up at 6am. Travel to the office would take 45 to 90 minutes, depending on traffic. The first thing I typically do is put together a list of tasks that I need to complete that day and then schedule those in between any meetings.

Due to the nature of service the organisation provided, I would be talking to colleagues every day, all the time, and customers at least every few days, unless there was a problem, in which case the frequency increased. I would meet with my manager every 1 to 2 weeks. Now, with my own business I have a lot of flexibility.

A customer-focused culture

In my last role, the organisation delivered services on behalf of the government. The best thing about the culture was the customer focus of the teams. Often, they would be embedded at the customer’s site and would take a lot of pride in the level of service delivered. I was in a leadership role in my previous corporate career, and this involved a mixture of interstate and overseas travel, on-site work, and customer visits. Working from home would be infrequent.

Increasing productivity with AI

As a developer, I use Integrated Developer Environments (IDEs) every day. Mostly Visual Studio Code and Xcode. The IDE you use will depend on the language you are working in, and most organisations will mandate this. These days I also use ChatGPT and Gemini. You can't blindly trust the code they produce, but for some things they are very good. I estimate they have increased my productivity by 2 to 3 times. I also use Adobe Illustrator and Photoshop for the visual elements and the Microsoft suite of products frequently (Word, Excel, and PowerPoint).

Mark’s career tips

Start coding

Start coding now, don’t wait for the perfect moment. Start with online tutorials, coding bootcamps, or online courses. The best way to learn programming is by doing. Pick something that you are interested in. Build personal projects or contribute to open-source projects. This helps solidify your understanding, teaches practical skills, and build a portfolio that can impress potential employers.

Work on your soft skills

Remember that soft skills are just as important as technical skills. Effective communication, teamwork and problem-solving are critical in software development. Projects often require collaboration and being able to work well with others is key.

Don’t be easily discouraged

Coding involves a lot of trial and error. Don’t be discouraged by bugs or challenges. The obstacle is the path! Building a network with other developers can open doors to job opportunities and provide a support system for learning and growth. Don't be afraid to collaborate with others.

Identify your area of interest

Research different areas within software development (front-end, back-end, mobile, IoT/Edge, data science, etc.) and identify what excites you the most.

Learn the basics

Choose a programming language relevant to your area of interest and start learning. Resources include online courses, tutorials, and books.

Engage with the community

Join online forums, attend meetups (virtually or in-person), and engage with other developers. The tech community is generally supportive and can offer invaluable advice and mentorship.

Embrace change

The only certainty is that things will continue to change, particularly in the Technology sector. I believe that the recent advances made in AI are a legitimate step change, as important as the introduction of the internet. So far, the efficiencies are being felt in areas like programming, writing, copy editing, customer service, network management, and cybersecurity. But this will quickly spread, and if you are a digital creative you need to embrace the change or risk being made obsolete.

The other obvious trends are in cloud computing, edge computing (IoT), cyber-security, data privacy, and (possibly) Web3 based on blockchain. AR (augmented reality), VR, and robotics still have a way to go before becoming mainstream. These are all areas worthy of building expertise in.

How would you approach looking for a job now?

If I was looking to get a job in IT now, I would start with my network. It is a lot easier to get a job either with someone you know or recommended by someone you know.

I would make sure that my LinkedIn profile was up to date and reflected the skills and abilities required for the job I was seeking. Many recruiters use LinkedIn as a tool to find candidates.

I would also be trying to build a personal brand by publishing articles in my areas of interest and contributing to relevant projects.

Volunteering can be an opportunity to build experience and your network – treat looking for a job as a job. If you are going for a programming job you need to be prepared to write some code during the interview. Companies like LeetCode can help you prepare for this and there are lots of free examples online.

It also helps to practice answering questions about your soft skills. Think of at least 3 to 5 examples of situations that you can use to answer questions like "tell me about a time you overcame a difficult problem." The format when answering these questions should be explain the situation, what you did, and what the outcome was (e.g. customer retention increased by 20%).

Frequently asked questions

What technical skills are valued in this occupation?

While having a broad knowledge base is good, specialising in a particular area (e.g., web development, mobile apps, machine learning) can make you more attractive to employers. I personally believe that the "full stack developer" is a myth.

Practice coding and interview questions. Many tech companies use coding interviews as part of their hiring process. Practice problem-solving and coding under time constraints to prepare. Also prepare for the questions on soft skills.

Learn version control. Proficiency with tools like Git is essential for collaboration in professional environments. Working on open-source projects is a good way to practice your Git skills.

What’s the usual career progression in this field?

There are many different paths into the industry. A degree or certificate will be enough to get you an entry level role in an organisation. This is probably the easiest route, and once established, you can decide what path you want to take. While undertaking the course, you can take other projects (e.g., personal apps, volunteer work, open source), that will help build your experience and differentiate you from other candidates.

It is also possible to get work via contracting or quoting jobs on sites like Freelancer or Upwork, but being able to demonstrate other successful projects is a prerequisite. Another option is to move from an adjacent role into a developer role (for example) within an organisation.

What challenges are typical in this career?

The tech field evolves rapidly, making continuous learning a fundamental part of a developer's career. At its heart, software development is about solving problems. Coding is the tool we use, but much of the work involves logical thinking, creativity, and finding solutions to complex issues. There's a stereotype of developers working alone in a dark room. In reality, development is highly collaborative, involving teamwork with other developers, designers, product managers, and stakeholders.

What traits are essential in this career?

The skills and attributes you require will depend on the role, but generally you will need:

  • Technical competence – understanding programming languages, algorithms, data structures, patterns, version control, and the principles of software development.
  • Soft skills – problem solving, attention to detail, communication, learning agility, time management, adaptability, teamwork, and user focus. No point being the best engineer in the company if no one wants to work with you.
How do you stay current with industry changes?

I take the approach that you can never stop learning. In this industry, things change too quickly. Five years ago, the industry wanted blockchain experts. Today it is all about LLMs (large language models). To keep up, I do a mixture of formal training and personal projects. Assisting with open-source projects is another way to learn about new languages and frameworks.

What support is available to those who want to get into this industry?

Back in my day, the university was very helpful in providing opportunities through career days and industry talks.

I am a member of an international professional organisation which provides access to quality technical publications, conferences, education, and networking opportunities.

Careers NSW provides the Industry Expert program and a number of other support services. The Federal Government also provides support through the Department of Employment and Workplace Relations


Additional questions about Professional, Scientific and Technical Services?

NSW Careers has a team of industry experts who can talk to you one-on-one about what it’s like to work in this industry. 

Talk to an industry expert

A woman in a white lab coat, looking through a microscope

Opinions in this article

Any opinions expressed by the interviewee are theirs alone and do not represent the views of the NSW Government or any government agency, regardless of whether the interviewee is (or has been) employed by a government agency. Their publication should not be seen as an endorsement or approval by the NSW Government. This article is for informational purposes only and should not be taken as professional advice. Please see https://www.nsw.gov.au/disclaimer for more information.

Top of page