• Develop the ability to create usable, efficient, high quality software that meets needs in any field of application.
  • Provide knowledge of the software development process and all stages of its life cycle, from definition of requirements, design and implementation, to maintenance and upgrading.
  • Provide knowledge of the programming languages, tools and technologies most commonly used to build software for different platforms.
  • Develop the ability to use agile methods to meet the goals for functionality, quality and development time.
  • Provide knowledge of the administration of systems, networks and applications, either locally, in a network or in the cloud.
  • Develop the ability to communicate and work effectively in a development team.
  • Provide students with learning skills that allow them to continue with further studies autonomously.
  • Develop the ability to adapt to new environments and emerging digital technologies, updating professional skills.

The Bachelor's Degree in Techniques for Software Development is ideal for anyone who wishes to acquire the necessary skills and knowledge to work as a software developer. This covers a range of roles including programmers, analyst programmers, web developers, software engineers or app developers.

The programme also provides the skills required for the administration of applications once they have been developed. Therefore, it prepares people to work in roles such as a systems administrator or network administrator.


General competencies

  • Use and apply ICTs in academic and professional spheres.
  • Communicate in a foreign language.

Interdisciplinary competencies

  • Express ideas in writing clearly and correctly, displaying a command of terms and expressions that are specific to the field of software development, for both academic and professional contexts.
  • Work in a team.
  • Adapt to new software development technologies and to future environments, updating professional skills.

Specific competencies

  • Identify the features of different types of organizations and the role played in them by ICTs.
  • Evaluate software solutions and draw up proposals for development projects, taking into account the resources, the available alternatives and the market conditions.
  • Understand and use the scientific bases of software development to analyse each problem at the appropriate level of abstraction and apply the skills and knowledge acquired in order to solve them.
  • Identify the structural elements and operational principles of a computer.
  • Understand the fundamentals of operating systems and computer networks so as to design and develop solutions that take into account each platform's specific features, available and shared resources, and the system's security.
  • Design and build computer applications using development, integration and reuse techniques.
  • Apply specific software engineering techniques to the different stages of a project's life cycle.
  • Apply specific data processing, storage and administration techniques.
  • Propose and evaluate different technological alternatives for solving a specific software development problem.
  • Develop cross-platform applications.
  • Design people-centred software solutions.
  • Conduct and submit a project in the field of software development and defend it before a panel of experts.
Would you like more information?

Send us your details and we'll send you information on this program and regarding UOC products, services and promotional activities

Dial a number that's 9 digits long.
Dial a number that's 9 digits long.
Country Code
Dial a number that's 9 digits long.
Country Code
Dial a number that's 9 digits long.


The UOC, the fourth best university in Spain according to the Times Higher Education Young University Rankings


Payment in Instalments

You can pay for your university bachelor's degree in instalments