About me

Hello I am Juan Casado Ballesteros, owner of this webpage 🙋🏼‍♂️

Studies:

I have studied Computer Science at the Alcalá de Henares University.

  • There I have learned the principals of OOP mainly using Java and Python, regarding that I did a few projects during the the first and second year of university.
    • Pygame: set of animated of figures. A set of figures related by a complex inheritance tree, with determined the posible animations they could perform on the screen.
    • Swing: poker casino. Simulating a casino you could be either a player or an administrator. Depending of your role there where some actions you could do. The players could play real poker five cards down game betting virtual money and the administrator could get access to the casino statistics of all games played.
  • Data structures and algorithmics with c++ and swift:
    • In order to simulate a back end server application to allow customers to buy tickets avoiding server saturation I build an architecture based on a complex system of ordered queues to manage the customers depending of their account type and entry timestamp. Also an ordered three was required to index the tickets sold in order to let customers access their purchases in an efficient way.
    • Using swift I build a library of common algorithms of the following families: greedy algorithms, divide and conquer, combine and conquer, intensive recursion, backtracking, graph planners, dynamic programming and non deterministic algorithms (Las Vegas and Monte Carlo algorithms).
  • Concurrency and TCP/IP:
    • Using c++ and CUDA we reviewed the most common ways of divide complex problems in order to solve them using extreme concurrency over GPUs.
    • With Java I did a project to simulate the behavior of a fuel station where varios cars could arrive at the same time and various workers could be serving fuel at the same time. Each entity was implemented with a thread and all of them where coordinated using the set of concurrency control classes provided by Java with represent a rich example of what can be archived with threaded concurrency from thread pool to atomic variables.
  • Data bases:
    • I was instructed either to model a relational data base in an Entity-Relation diagram and to manage a data base. Extended knowledge about the internal behavior of PostgresSQL data bases, MySQL data bases and the process s of parsing and optimization SQL queries.
    • Non relational management of data in JSON and XML format. Using antlr4 libraries I build a Lexer and a parser which could transform a OO group of related classes and create a svg image which represent them as well as their attributes using dot format as intermediate language.
  • Project management and software engineering:
    • Each mentioned project was done with an specific methodology using professional tools to document each step:
      • Rational to create RUP diagrams.
      • Toad Data Modeler and pgModeler to model relational data bases.
      • Adobe XD to design interfaces.
      • JIRA to manage agile methodologies, special SCRUM.
      • GIT (who has never used this repository manager?)

Robots: 🤖

With a local company called Complubot I built some awesome robots which we have used to participate in the RoboCup Junior Competition or the SIMO fair.

  • Alien Soccer: a robot designed to participate in the Robo Cup Junior. Built with wood, powered by a omnidirectional motor platform and equipped with distance sensors, infrared light detectors, and a compass this modular Arduino based robot was the third out of six of the best European junior soccer teams at the El Calderón stadium.
  • ColdPlay: this robot was powerless by a diferencial motor platform and equipped with a grab and a pixy cam. It used the camera to perform image processing in order to detect and classify with the grab objets by their color.
  • MegaTrueTrue: the first big structural robot. Also powered with a differential moto platform it imitated the Tru True robot but being with times bigger.
  • POLLOTRON: (still in development) Equipped with an i5 processor, a LIDAR sensor, an Intel real Sense camera and powered by an omnidirectional mecum motor platform this enormous robot runs ROS over linux to perform SLAM algorithms.

Projects:

Apart from university and work I also love to do some stuff by my own. In this matter I have build some Android and iOS apps, for example a simulation of Conway’s game of life or a game called ColorQueue which I used to learn the c++ syntax for threaded concurrency and TCP/IP networking.

Also I try to reserve at least one our each day to myself and code and investigate in what ever field I want. I am enrolled in a daily coding challenge program and I upload each day the answer of a new coding challenge each day. At first I was a bit rough to solve some of the problems but with time it gets easier 😋

Check my CV on GitHub

LinkedIn

YouTube 

Android apps

iOS apps

I love technology and I am constantly looking for new projects and new frameworks, libraries, engines, APIs, anything to add to them.

This video was made for the Talentoteca contest hosted by Huawei as a CV