Hi, I'm Eric.
This is my website where you can see some info about me and my personal IT projects.
This is my website where you can see some info about me and my personal IT projects.
Born and bred in Romania, I moved to the UK for my Computer Science degree in 2018-2021. I graduated from University of Warwick with Honours and started working for Wise as a Graduate Software Engineer in London.
I love hiking, skiing, rock climbing, ice skating and trying different types of food and music.
Break the News is a PHP web application where users can create rooms to share news with the public. The communication is one-way, the members of the public are unaware of each other and unable to communicate, and it does not store any personal data. The web app uses cookies to save rooms and does not require users to create accounts.
[LOGO-only] The Plate is a restaurant in Bucharest, district 1. They also organize private events. Website: https://theplate.ro
[LOGO-only] CRISPR Analyzer is a web application which helps investigate the importance of features in ML-based tools for CRISPR/Cas9 gRNA efficiency prediction.
Robot Maze - In the CS118:Programming for Computer Scientists Robot Maze coursework, we were given some Java interfaces, University libraries, and an already functional user interface and we had to implement the application's logic. From following simple strategies such as going at random until the robot finds the exit to implementing Trémaux's algorithm, I was very excited to work on this and achieved an upper-first class grade for the project.
Mastermind - In the first CS141:Functional Programming coursework, we had to write a few specific functions in Haskell in the most efficient way possible. Apart from that, we were tasked with implementing Donald Knuth's algorithm to solve any game of Mastermind in 5 guesses.
Scratch Clone - In the second CS141:Functional Programming coursework, we had to implement a program interpreter in Haskell. The interpreter was designed for a software similar to Scratch.
Computer Organisation & Architecture - In the first CS132 coursework, we had to design a specific circuit for a decoder while only using NAND gates, a n-bit bidirectional shift register, a program that gives the nth Fibonacci number using Pascal's triangle and a program written in Assembly to check whether a number is prime.
Computer Organisation & Architecture - In the second CS132 coursework, we designed a program that helped a robot explore its whereabouts using C and programming its sensors.
Security threats - In the two courseworks we had in CS140: Computer Security, we had to find security threats for both a complete Linux system (about thirty threats) and for a simple PHP website (about 10).
Witter, a Twitter clone - In the CS126:Design of Information Structures coursework, we were tasked with finding and implementing optimal data structures for potential big data (millions of table rows) in Java. For the purpose of this coursework, I implemented hash tables, array lists, different types of trees and linked lists from scratch and used them with the University's libraries to produce a Twitter clone, Witter.
Low-level packet flow - In the CS241: Computer Networks & Operating Systems coursework, we designed a program that helped interpret packet contents, by stripping their headers and analysing certain aspects of them, while also learning about different protocols and implementing a multi-thread system to properly parse them. It was written in C.
Lecture planner in Python - In our CS255: Artificial Intelligence coursework, we had to design a lecture planner in Python. The program received available times as input and output a planner such that no lecturers had clashes and as few students as possible had clashes.
[TEAM-BASED] Purple trading, a derivative trading platform - In the CS261 coursework, me and my team were tasked with designing a derivative trading platform, whilst engineering it from A to Z. This means we had to write papers such as "Requirements Report", "Progress Report" and even a final formal presentation in front of actual Deutsche Bank representatives. I was in charge as the lead programmer and not only developed the codebase which was used to built onto, but also connected the other people's features with the existing codebase. We used Django, a Python framework.
Resolution proofs - In the CS262: Logic and Verification coursework, I designed a program that received a formula and output whether it had a resolution proof or not. The program was written from scratch in Prolog.
Staff, Products and Orders - In our CS258: Database Systems coursework, we had to design a system capable of handling the flow of a typical shop or market. Registering orders, deleting them, editing them, handling staff members, items available in the shop, their purchase, the shop's inventory, their stocks and so on. These functions were written in JDBC, using SQL and prepared statements for enhanced security.
JavaCC program interpreter and evaluator - In the CS259: Formal Languages coursework, I designed a program interpreter and evaluator in Javac that output whether a program is correctly typed (or why not), including its evaluation results.
Packet forwarding - In the CS345: Sensor Networks and Mobile Data Communications coursework, a system was developed to forward packets. The packets were emails, starting from one static point towards a moving target. The moving target was a "bus" driving towards another static point. The used protocols were analysed and additional implementations were made for them to work in this scenario. Only a certain number of emails could be transmitted before the bus drove out of range from the point producing emails, therefore not all the packets could be received at the final destination.
The Robot Arm - In my CS324: Computer Graphics coursework, I programmed a 3D robot arm in OpenGL. The arm had to solve the classic Towers of Hanoi problems on its own. Collision detection was implemented, and the arm properly moved disks from one stick to another, given any number of disks as parameter.
Fake? Or Real? - In the CS355: Digital Forensics coursework, we had to develop different programs in Matlab for various tasks: from identifying suspects by only knowing what camera model they own and having a video at hand, to deciding whether an image was tampered using advanced recent techniques such as JPEG Ghost.
UI/UX Design - In the CS348: Social Informatics coursework, we firstly had to conduct an industry-level analysis of a given user interface using specific usability principles. Afterwards, we had to fix them using HTML, CSS and pure JavaScript, enhancing the experience of the given UI tremendously.