• FutureLearn logo

Software Development with Python and Java: Prepare for a Software Development Career

Review everything you need to know about Java and Python to start a career as a software developer.

Lady working at two screens that show lines of code on them
  • Duration

    4 weeks
  • Weekly study

    4 hours

In the final course of the Software Development with Python and Java ExpertTrack, you’ll build on everything you’ve learnt so far about these programming languages.

You’ll apply object-oriented programming principles to Java, and go deeper on methods, constructors, strings, inheritance, classes, and collection.

Start your career in software development

This course will help and encourage you to explore the key traits and characteristics of successful developers and compare various career paths and valuable certifications. You’ll also look at how to foster leadership in a software development team.

By the end of the course, you’ll feel more confident and better equipped to start or further your career in software development, armed with the ability to utilise Java and Python in your everyday work.

Review your Python and Java skills before adding them to your CV

This final course is an opportunity to go back over everything that you’ve learned and add some final functions to your skillset. This includes defining object-oriented programming in relation to Java, as well as describing the use of methods, strings, inheritance, and more.


  • Week 1

    More Java

    • Welcome to the course!

      Introduction to the course and an overview of Week 1.

    • Classes and Objects

      In this section, you’ll learn about classes and objects. From using constructors to performing calculations for implementing an interface, this section will cover a variety of practical examples.

    • Methods and Constructors

      In this section, you’ll learn about methods, which can be used to encapsulate the behaviour of a class, and about constructors.

    • Strings

      Java supports an in-built class called 'String' which can be used to store some text values, which you'll learn about here.

    • Wrap-up

      To complete the week, let’s recap the key points covered so far.

  • Week 2

    Even more Java

    • Introduction

      Welcome to Week 2! Let's first introduce the week's topics and outcomes.

    • Inheritance

      Learn about Inheritance in Java, which helps a class acquire the attributes and behaviour of another class and facilitates code reuse.

    • Interfaces

      Java supports another construct known as an interface. This week, we will learn what interfaces are and how they can be used to specify a behaviour that a class must provide.

    • Collections

      Collections can be used to store a group of objects and are collectively known as the Collection API or Collection Framework. This week you'll learn about the important classes and interfaces in the Collection framework.

    • Wrap-up

      Wrap up of this week's concepts.

  • Week 3

    High-performance developer traits, tactics, and career pathways

    • Introduction

      Welcome to Week 3! Let's first introduce the week's topics and outcomes.

    • High-performance developer traits and tactics

      Here you'll gain insight into what makes a great professional programmer, which will help you successfully navigate your own professional development in the software development sector.

    • Developer career pathways

      Learn about career options in software development, formal qualifications and certifications, a model for considering your progression, and about the role of apprenticeships and mentoring.

    • Wrap-up

      Wrap up of this week's concepts.

  • Week 4

    Leadership and effective teams

    • Introduction

      Welcome to Week 4! Let's first introduce the week's topics and outcomes.

    • Leadership and software development

      Learn about the core components of leadership, the power of the purpose-driven leader who inspires, the value of coaching, as well as what leadership looks like in the tech industry.

    • Effective teams and projects in software development

      Learn about the key factors contributing to effective teams, why a successful project requires an agile mindset, specific considerations for creating, nurturing, and being part of an effective software project.

    • Wrap-up

      Wrap up of this week's content.

Learning on this course

On every step of the course you can meet other learners, share your ideas and join in with active discussions in the comments.

What will you achieve?

By the end of the course, you‘ll be able to...

  • Define object oriented programming in relation Java
  • Describe the use of methods, constructors, strings, inheritance, classes and collections in Java
  • Describe key characteristics, traits and careers pathways of a professional developer

Who is the course for?

This course would appeal to individuals looking to start a career as a developer, including:

  • Career starters or career changers looking for an entry level role as a developer.
  • Established technology professionals looking to better understand software development.
  • Entrepreneurs with an idea for a new product or service who need to understand at a high level how this could be translated into a finished digital good or service.
  • Project, product or general managers, looking to gain hands-on experience developer activities.

What software or tools do you need?

During the course we’ll be using Python, Jupyter Notebook and Java. We recommend you use a computer to access this course.

Who will you learn with?

Lewin delivers high quality, scalable software that behaves predictably and fails gracefully. He understands how to make effective tradeoffs between new features, system complexity and technical debt.

Who developed the course?


FutureLearn is a leading social learning platform and has been providing high quality online courses for learners around the world over the last ten years.

In collaboration with

GitHub logo

Endorsers and supporters

endorsed by

Coventry University logo

Learning on FutureLearn

Your learning, your rules

  • Courses are split into weeks, activities, and steps to help you keep track of your learning
  • Learn through a mix of bite-sized videos, long- and short-form articles, audio, and practical activities
  • Stay motivated by using the Progress page to keep track of your step completion and assessment scores

Join a global classroom

  • Experience the power of social learning, and get inspired by an international network of learners
  • Share ideas with your peers and course educators on every step of the course
  • Join the conversation by reading, @ing, liking, bookmarking, and replying to comments from others

Map your progress

  • As you work through the course, use notifications and the Progress page to guide your learning
  • Whenever you’re ready, mark each step as complete, you’re in control
  • Complete 90% of course steps and all of the assessments to earn your certificate

Want to know more about learning on FutureLearn? Using FutureLearn