Short courses


Software for Network Services and Design

  • 150 hours
  • 9 weeks (Fridays) + optional assessment


This short course/CPD module will give you exposure to, and experience of, a range of software skills appropriate to communication engineering.

It will address the increasingly important role of object oriented (OO) software techniques in telecommunications.

You'll learn through a combination of lectures, hands-on activities and demonstrations.

You don't need any prior knowledge of programming skills.

The course is run by UCL's Department of Electronic and Electrical Engineering.

Who this course is for

The department's courses/CPD modules are aimed at those working in the telecommunications industry such as researchers, engineers, IT professionals and managers. 

They're particularly suited to graduates in electronic and electrical engineering, physics, communications engineering and computer science who want to further their knowledge on a particular topic, or work towards a Master's degree. 

You don't need any prerequisite qualifications to take this course.

Course content

During the course you'll learn about the essential programming concepts for networking using the python programming language.

The basic programming concepts will be introduced in a general manner: variables, conditional statements, loops.

You'll then learn about the following:

  • Essential data structures like strings, lists and dictionaries
  • Modules and object orientation
  • Socket programming, in order to learn how to build distributed applications both using TCP and UDP (given the networking focus of the course)
  • Data processing tools
  • An introduction to machine learning, namely the basics of neural networks and deep learning

The course consists of small introductions to the concepts and exercises to consolidate knowledge.

For the optional assessment you'll be asked to do a machine learning program.

Dates, assessment and certificates

Classes will be held on Fridays, over 9 weeks.

Teaching will take place in person with some materials available online. Please note, dates and teaching arrangements may need to change in response to government guidance around Covid-19.

The assessment will consist of coding and written assignments, some of which will be carried out during the course.

If you complete the course but not the assessment, you'll receive a certificate of attendance.

If you take and pass the assessment you'll get a certificate stating this, which includes your pass level.

Benefits of UCL's Electronics and Electrical Engineering CPD courses

You can take this course as a standalone (one-off) course/module, or accumulate it towards an MSc qualification (up to two standalone modules can be transferred towards the flexible MSc degree).

Benefits to employees
The programme offers the opportunity for professional people working in the telecommunications industry to develop their career, be able to respond to changes in their environment, and learn while they earn. It's also designed to give you the opportunity of working towards an MSc qualification from an academic institution whose quality is recognised world-wide.

Benefits to employers
Our flexible CPD courses enhance staff motivation and assists in the recruitment and retention of high-quality staff. It enables your company to keep ahead of the competition by tapping into world-leading research, and to profit from UCL's world class Telecommunications and Business expertise.

View the full range of related courses available.

Learning outcomes

On completion of this course, you should be able to:

  • program simple programs in Java using object orientation
  • program a client/server application using Java sockets that use TCP, UDP and Multicast
  • design and implement network applications for mobile devices using the Android development kit
  • understand the fundamentals of software engineering design

Course team

Dr Miguel Rio

Dr Miguel Rio

Miguel's areas of interest include internet congestion control, quality of service, routing and QoS routing, multicast, and traffic analysis.

Course information last modified: 19 Oct 2021, 14:50