Bachelors Degree in Computer Science and Engineering

In here you will find a summary of all the projects that I have worked on during my bachelor’s Degree in Computer Science and Engineering. The subjects listed here reflect the choices I made.

1st year (2019/2020)

1st Semester

Foundations of programming

  • language -> Python
  • 1st Project

    • Movement of a unit along a maze
  • 2nd Project

    • Batle Simulator

Introduction to Computer Architecure

  • language -> P4’s Assembly (16 bit assembly)
  • Project:
    Simulator of a ball falling in an inclined file, with the computation of speed an acceleration using newton’s movment equations.

2nd Semester

Introduction to Algorithms and Data Structures

  • language -> C
  • 1st Project

    • Aplication to manage sells and orders for a store (with emphasis on sorting algorithms)
  • 2nd Project

    • Aplication to manage friendly football games (with emphasis on search algorithms and structures)

Logic for programming

  • language -> Prolog
  • Project

    • Crossword solver

2nd year (2020/2021)

1st Semester

Operating Systens

  • language -> C (parallel programming)
  • Project

    Divided throughout 3 stages, we were tasked with creating a file system that could handle requests from multiple clients (the requests were made using unix sockets)

Object Oriented Programming

  • language -> java
  • Project App to manage sales and transactions of a company

2nd Semester

Human Computer Interaction

  • language -> javascript,CSS,HTML (using javascript’s p5)
  • 1st project

    • App to manage household expenses. The app was developed using figma.
  • 2nd project

    • Interface that reduces target selection time
  • 3rd project

    • SmartWatch writting interface

Analysis and Synthesis of Algorithms

  • language -> C++
  • 1st project Falling domino tiles problem (Dfs and graph sources problem)

  • 2nd project

    • Process scheduling problem based on their execution cost (flow in a graph problem)

Theory of Computation

  • language -> language recoginzed by the Turing’s Machine
  • Project

    Implement Turing machines that manipulate other Turing machines (given as input) to produce new Turing machines (all machines must run on the universal machine).

3rd year (2021/2022)

1st Semester

Computer Organization

  • We were task to solve laboratory problems (basically research and then answer) that further increased our knowledge of the subject at study. We had to solve problems related to chache’s, chache’s otimization, code otimization, amongst others.

Machine Learning

  • language -> python
  • We were tasked to analyze given datasets and reach our conclusions. Theese datasets were analyzed with machine learning tecniques such as decision trees, K-learning, neural networks, amongst others.

Computer Networks

  • language -> c++
  • project

    • App for a message forum. This project had emphasis on the client server communication architecure.

System Analysis and Modeling

  • Modeling the system (in diagrams) that we were given through different perspectives. This could also be called requirments engineering

2nd Semester

Software Engineering

  • language
    • backend -> Java e Groovy (tests)
    • frontend -> Vue.js e Typescript
  • project
    • Add 3 new features to quizzes tutor, which is a tecnico’s platform where teacher’s can post quizzes and the student’s can answer them

Distributed Systems

  • language -> java (resorting to gRPC for the communication)

  • project -> Class enrollment handling distriubuted system

Artifitial Intelengence

  • language -> python

  • project -> Numbrix puzzle solver using AI search tecniques

Compilers

  • language -> c++, flex, yacc

  • project -> Complete compiler for the l22 language (the language that we were tasked to develop)

Databases

  • language -> sql, python

  • project -> Develop a database for vending machines and the corresponding web app (using django).

Computer Graphics

  • language -> javascript (using three.js)

  • project -> We were task with creating different scenes that tackled every aspect of computer graphics from simple rotations to shadding and lighting.