Software Development with Industry Placement - MSc - CITY College, University of York Europe Campus
Κολέγιο CITY College
Main Campus, Thessaloniki, Greece

Software Development with Industry Placement - MSc

MSc in Software Development

MSc in Software Development

Degree title: The title of Master of Science in Software Development with Industry Placement is awarded directly from the University of York 
Duration: 2 years (part time)
Mode of delivery: Online/Synchronous. Classes take place during weekends.
Language of instruction: English

I need more information about this programme

I agree to receive information relating to the programme of my interest via email.

Industry Collaborations:
(in alphabetical order)

Industry Collaborations

The Computer Science Department of CITY College, University of York Europe Campus has established strong links with the industry, which include collaborations and partnerships with many companies and organisations. Students benefit from the department's links to the industry in multiple ways (i.e. opportunities for job placements, internships, real-life projects and more).

Special tuition fees

Students applying for this programme may take advantage of the special tuition fees offered by CITY College to all applicants.

For more information, please fill in the form above.


The programme

The MSc in Software Development programme is a postgraduate programme aimed at students who are graduates of any discipline and may come from a wide variety of academic backgrounds other than Computer Science studies. The programme provides students with a wide understanding of Computer Science and of core computing skills and prepares graduates for rewarding and challenging careers in the computing industry and technology related fields.

Industry Placement
Additionally, the programme offers the unique opportunity to start working as a software developer in a software development company and thus enhance your CV, build up your skills, and gain valuable insights from the IT industry and professional experience while studying. The industry placement is an invaluable component within the programme available for all students.

The Industry Placement practicum consists of 300 hours and it is done after the dissertation.


Why choose this course?

  • Degr​ee from one of the world’s top universities, the University of York.
  • Opportunity for a new career path for candidates who wish to become software developers.
  • Industry placement: unique opportunity for students to embark their career during their studies by working at one of our industrial partner companies.
  • Graduates are fully equipped and ready to enter the software development industry.
  • Flexible delivery mode: classes at weekends.
  • World-class, research-led teaching combined with hands-on practice.
  • 90% of the Computer Science Department graduates find employment right after graduation.
  • Excellent career prospects in Europe and in the world. The value and status of the University of York degree, as well as the valuable skills and knowledge gained during studies reflect the excellent career prospects of our graduates.
  • Taught by excellent academic staff with extensive teaching and professional experience.

More reasons why:


Recognition of degress Accreditation and recognition The Department

Fundamentals of Computer Science
Object-Oriented Programming
Software Development for Mobile devices
Computer Networks
Database Systems
Software Engineering
Web Technologies
Artificial Intelligence
Research Skills & Dissertation Preparation
Industry Placement





Fundamentals of Computer Science
This unit offers a comprehensive introduction to important topics that are considered backbones of Computer Science. The unit focuses on fundamental concepts of computer architecture and operating systems, algorithm development and analysis, data organization/representation and data abstraction. Overall, the unit aims to enable students to develop knowledge, understanding and practical skills on issues that are essential in the field of computing and crucial in the IT industry. Back to top

Object-Oriented Programming
This unit is presents the fundamental concepts of object-oriented programming as well as techniques for the analysis, design and implementation of object-oriented solutions in the Java programming language. Initial emphasis is placed in determining and implementing the necessary user-defined classes, identifying the relations among them and making use of the principle of inheritance. The unit then covers advanced concepts of object-oriented programming, such as polymorphism, design with interfaces, and error handling in the Java programming language. Finally, Graphical User Interfaces are also introduced for the creation of user friendly applications. Back to top

Software Development for Mobile devices
The unit aims to introduce students to the development of application for mobile devices. If focuses on the design, and implementation of Android applications. The principles of designing applications for mobile devices will be provided, taking into consideration resources constraints and special human-computer-interaction issues. Back to top

Computer Networks
This unit provides the student with thorough understanding of fundamental as well as contemporary issues of data communications and computer networking. It gives students the ability to familiarize themselves with computer networks in order to gain a thorough insight of data exchange. Important and crucial subjects related to computer networking and Internet technologies are explored. This unit introduces students to modern communication systems and offers a comprehensive overview of the fundamental principles, theories and practices employed in computer networks. All protocol layers are addressed and crucial issues, such as network subnetting and security, are also examined. Back to top

Database Systems
This unit provides introductory and advanced concepts and principles of database systems and examines key issues of the database approach to information storage and manipulation. In addition, since designing a successful database application requires conceptual modeling, the unit explains the modeling concepts of the Entity Relationship Diagram as a high-level conceptual data model. Furthermore, the relational data model is analyzed as an implementation data model due to its widespread use in traditional commercial database management systems. Last but not least, the unit presents the main features (basic & advanced) of the structured query language since it is the lingua franca of relational database management systems. Back to top

Software Engineering
The unit aims to develop an understanding of the problems involved in the development of high quality software products and appreciation of the methodologies, techniques, and tools necessary to develop such systems efficiently. The emphasis of the course is placed on project management, metrics and project estimation, risk management, quality issues, testing, and contemporary software engineering topics, such as extreme programming and refactoring. Back to top

Web Technologies
The World Wide Web has evolved into a continuously growing universe of interlinked websites and web applications that offer interactive, real-time and multimedia content. This growth was partially due to the advancements in web technologies which offer the ability to create immersive web experiences. This unit provides the fundamental knowledge needed in order to engage in web programming and web application development. It provides an overview of the architecture, design and development of both static websites and dynamic web applications. It explores at an introductory level the fundamental web programming technologies including server-side, client-side and presentation technologies. Back to top

Artificial Intelligence
Artificial Intelligence (AI) is the area of Computer Science with the ultimate goal to build intelligent machines, i.e. machines that exhibit human-like behaviour when solving complex problems. Following the classic equation that "AI = search + knowledge representation", this unit provides an in-depth introduction to explainable Artificial Intelligence problem solving techniques by presenting blind and heuristic state space search algorithms, knowledge representation (KR) techniques, such as logic, structured representations and rules as well as basic natural language syntax and semantics processing and finally principles of machine learning. For each technique discussed special emphasis will be given on the practical issues that arise during implementation. The unit provides the necessary background knowledge for the advanced third year units. Back to top

Research Skills & Dissertation Preparation
Through this unit develop their research skills and get prepared for working on their MSc dissertation. With the guidance of their supervisors, students are introduced to the research topics and techniques that are commonly employed in software engineering research. Students are exposed to and exercise the principles and practices of report writing, literature reviewing, and research designs and approaches. Back to top

Industry Placement
A student completing the taught part can attend an Industry placement in which he will work for a period of 3-6 months in a software development company thus acquiring further practical skills invaluable in the industry. Students who complete their placement in the industry will get the degree Software Development with Industry Placement. Students who do not wish to work in the industry of do not complete their placement will get the degree Software Development. Back to top


Entry requirements

Candidates should hold an undergraduate degree in any discipline.
View the application and admission requirements of the programme.


How to apply

If you wish to apply for this programme you may view details of the application process.


Any questions?

If you'd like to know more about this programme, contact our Admissions Team at


The Computer Science Department of CITY College, University of York Europe Campus provides excellent quality education driven by research and industrial needs, by developing and maintaining high standards in the provision of education and by deploying quality assurance procedures, with major aim to produce high calibre graduates, well-equipped to pursue successful careers in a wide range of contexts.

Students do not only acquire a sound theoretical understanding but they also gain practical experience, by applying their knowledge on real life projects. Students benefit from the research-led environment, since they are exposed to not only the well-established fundamentals in their courses, but also to the most advanced theories and techniques currently under consideration and they are encouraged to be involved in academic research activities. Students are taught by academic staff members who are passionate about developing and delivering high quality innovative and inspirational learning and teaching methods. Students benefit from the provision of personal support, which ensures their successful learning development. 
More about the Computer Science Department


Research at the Computer Science Department

The academic staff of the Computer Science Department

Contact the Computer Science Department

Recognition and Careers

Accreditation and Recognition
CITY College is strongly committed to quality education and academic excellence. It is officially accredited and recognised by top international accreditation bodies. Read more

Degree and formal qualifications
The degree and formal qualifications our graduates receive.

For Greek graduates only: Recognition of degrees


Career opportunities

Graduates of the MSc in Software Development with Industry Placement may be employed as software developers, web developers, mobile application developers, software engineers, technology consultants and software project managers.


Career, Employability and Enterprise Centre

The Career, Employability and Enterprise Centre, focuses on helping students to set attainable career goals. It offers advice on CVs and cover letters, and on how to effectively handle job interviews. Through career fairs, and different internship programmes, the department aims at constantly bringing students in contact with prospective employers. 

Every spring we organize the Annual Career Fair presenting with an opportunity to get a first feel of job seeking. During the event students and alumni have interview opportunities with corporate recruiters and present their skills and abilities to potential employers. Large companies, organisations and multinationals from different industries across S.E. Europe participate every year in our Career Fair and offer employment and internship opportunities to our students and graduates.
More about our Career Services.

Contact the Career, Employability and Enterprise Centre at


The programme is taught by academic staff members who have extensive teaching and professional experience. The administration staff fully supports all processes of the department and provides a wide range of services to our students.

The academic staff & administration staff of the Computer Science Department


Accreditation and Recognition by:
Change your Cookies Preferences