s a r i n ge l o s · 2018-08-31 · webrtc janus.js three.js tel.: +306980316030. i application...

6
Thanos Saringelos Thessaloniki, Greece E-mail : [email protected] Skype : Thanos_Sar Github : link LinkedIn : link Site : link Summary I was born in Greece in 1989 and studied Computer Engineering at Technical University of Crete (TUC) where I was taught the complete spectrum of how a computer operates. From transistors to the CPU and from Operating Systems to the highest level programming languages and the UX. Software development proved to be my choice of a profession and specifically Web development. My graduation thesis was a personal idea: Build a web application that combined the WebGL API with the Web Audio API to create an immersive Graphic-Audio experience for the user. EDUCATION Technical University of Crete (TUC) Degree — 2008-2014 I studied on the Electronic Engineering and Computer Engineering at TUC for 6 years (considered to include a M.Sc). This department teaches you everything about a computer. Mathematics, Physics, Hardware, Software, Telecommunications were the main focuses through my studies. I was font of software with which I was able to create something useful, educational or entertaining. During my studies I developed various projects in assembly, C, Java, Matlab, a major social media application (Java, HTML, CSS, Javascript, MySQL full stack developer), a medium-size WebGL game and a major WebGL-WebAudio application for my graduation thesis. Classes I took - Introduction to C programming - Structured Programming - Object Oriented Programming (Java) - Digital Computers (assembly) - Data and File Structures (java) - Operating Systems (c,java) - Digital Signal Processing (matlab) - Databases (MySQL, SQL ) - Computer Organization (implemented CPU with VHDL) - Algorithms and Complexity - Computer Networks - Web Application Development (Javascript, HTML, CSS, XML, JSON, Java, JSP, MySQL) - Graphics (HTML, CSS, javascript, WebGL) - Graduation thesis (three.js/WebGL, javascript, HTML5/CSS3) SKILLS Javascript, javascript design patterns, javascript APIs/libraries WebGL WebRTC Janus.js Three.js tel.: +306980316030

Upload: others

Post on 07-Jun-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: S a r i n ge l o s · 2018-08-31 · WebRTC Janus.js Three.js tel.: +306980316030. I Application architecture (under constant improvement!) M.E.A.N. stack (recent skill) HTML5/CSS3

Thanos Saringelos Thessaloniki, Greece E-mail :

[email protected] Skype : Thanos_Sar Github : link LinkedIn : link Site : link

Summary I was born in Greece in 1989 and studied Computer Engineering at Technical University of Crete (TUC) where I was taught the complete spectrum of how a computer operates. From transistors to the CPU and from Operating Systems to the highest level programming languages and the UX. Software development proved to be my choice of a profession and specifically Web development. My graduation thesis was a personal idea: Build a web application that combined the WebGL API with the Web Audio API to create an immersive Graphic-Audio experience for the user. EDUCATION Technical University of Crete (TUC) Degree — 2008-2014 I studied on the Electronic Engineering and Computer Engineering at TUC for 6 years (considered to include a M.Sc). This department teaches you everything about a computer. Mathematics, Physics, Hardware, Software, Telecommunications were the main focuses through my studies. I was font of software with which I was able to create something useful, educational or entertaining. During my studies I developed various projects in assembly, C, Java, Matlab, a major social media application (Java, HTML, CSS, Javascript, MySQL full stack developer), a medium-size WebGL game and a major WebGL-WebAudio application for my graduation thesis. Classes I took

- Introduction to C programming

- Structured Programming

- Object Oriented Programming (Java)

- Digital Computers (assembly)

- Data and File Structures (java)

- Operating Systems (c,java)

- Digital Signal Processing (matlab)

- Databases (MySQL, SQL )

- Computer Organization (implemented CPU with VHDL)

- Algorithms and Complexity

- Computer Networks

- Web Application Development (Javascript, HTML, CSS, XML, JSON, Java, JSP,

MySQL)

- Graphics (HTML, CSS, javascript, WebGL)

- Graduation thesis (three.js/WebGL, javascript, HTML5/CSS3)

SKILLS

● Javascript, javascript design patterns, javascript APIs/libraries ● WebGL

● WebRTC

● Janus.js

● Three.js

tel.: +306980316030

Page 2: S a r i n ge l o s · 2018-08-31 · WebRTC Janus.js Three.js tel.: +306980316030. I Application architecture (under constant improvement!) M.E.A.N. stack (recent skill) HTML5/CSS3

● Application architecture (under constant improvement!) ● M.E.A.N. stack (recent skill)

● HTML5/CSS3 ● MySQL

● Java

● C

● Assembly

● Matlab

● VHDL

Current Tech Stack I specialize in Javascript (design patterns and fundamentals). HTML5 WebGL/three.js and all of the related technologies to them belong to my armory. I have been working on WebGL/Web Audio for more than 6 years now. Also, I have a short but growing experience with the MEAN stack and I also have a fair experience with PHP, Java and MySQL. Git, Jira, Sublime, Slack, Asana, Apache Tomcat, Eclipse, PhpStorm, SublimeText, Oracle's VB w/ vagrant, WebGL Inspector, WebRTC internals, chrome and its Dev Tools have been my personal environment of development since I started working. I do have a fair experience with 3DS MAX and a smaller with Sketchup. I love new technologies and APIs that bring power to the web. Audio, 3D and VR are some of my main focuses these days. Experience In the university I will mention only software projects here.

● MIPS assembly implementations ● Various OO applications in Java (included a complete server) ● Various applications in C (included a complete server )

● Major social media application named ituned.com (full stack : MySQL Database,

Java Server, JSP, HTML/CSS and Javascript, XML/JSON)

Screenshot of ituned.com

● Pure WebGL application (Bloxorz Game)

Page 3: S a r i n ge l o s · 2018-08-31 · WebRTC Janus.js Three.js tel.: +306980316030. I Application architecture (under constant improvement!) M.E.A.N. stack (recent skill) HTML5/CSS3

Screenshot of Bloxorz Game

Professionally Front End Developer (WebGL, Web Audio), TUC Major WebGL/threeJS Web Audio application (thesis which became my profession project

afterwards). You can see it live at looparound.xyz. Through this app the user is able to

interact with the objects in the 3D scene, activate their animations, produce sounds by

hitting them and finally create audio loops that play back forever via the 2D sequencer at

the top of the screen!

screenshots of looparound

Front End Developer (WebGL), Nuclear Energy Research Institute Freelance 2014 2016 In a team managed by Fernando Bardella I was the principle developer and together we

developed an application for crystal visualization in the browser. WebGL/threeJS, 3D

printing, Oculus Rift, Google Cardboard, Stereoscopic Rendering, Leap Motion, Custom

Shading and various other features were developed mostly by me through our long

cooperation.

screenshots of crystalwalk

You can see it live at crystalwalk.herokuapp.com

Page 4: S a r i n ge l o s · 2018-08-31 · WebRTC Janus.js Three.js tel.: +306980316030. I Application architecture (under constant improvement!) M.E.A.N. stack (recent skill) HTML5/CSS3

AR programmer (WebGL, WebRTC, Augmented Reality, Livestreaming), Proximie Freelance 2016 - Current Proximie provides a platform for live-streaming surgeries with the participation of remote doctors and students. Doctors can create annotations, add movable/configurable images, use surgical 3D tools or their actual hand to assist to the surgery (all of the previous are overlaid over the surgery video) and share their computer's screen in order to comment/interact with the content. All of the above are being recorded for later watching at Proximie's Video Library. I am in charge of building the AR layers, video processing, 3D object overlaying, 2D annotations, the live-streaming capabilities and sharing screen using Janus Extension (front end). I worked remotely as a Web Graphics Engineer using javascript, GLSL, WebGL, three.js, Canvas API, WebRTC, janus.js and more.

Projects I did during my free time

● 3D Google T-rex

Google's offline 2D game developed as3D game with camera manipulation by the user. Fast collision detection, animations and track spawning at 60 FPS!

● Pentagram3D A pentagram in 3D that implements many features of the pentagram in paper!

Page 5: S a r i n ge l o s · 2018-08-31 · WebRTC Janus.js Three.js tel.: +306980316030. I Application architecture (under constant improvement!) M.E.A.N. stack (recent skill) HTML5/CSS3

● MixItLive MixItLive is a audio processing app for visualization and manipulation of audio streams.

The user is able to mix a song as it plays by changing thepanning and the gain of the

instruments of the song. Each instrument is represented by icons that user can move. Web

Audio Api and canvas were used.

● VideoPuzzle

Put the pieces of the puzzle in their right position in order to see the video playing.

● Stagona01

Stagona01 is a website for a band that features WebGL water and interaction with the user

by clicking on it. Content about the band is appearing by clicking on specific parts of the

image that is rendered under the WebGL water. The water shaders were based fully on

goo.gl/Qrq8SH made by Evan Wallace.

Page 6: S a r i n ge l o s · 2018-08-31 · WebRTC Janus.js Three.js tel.: +306980316030. I Application architecture (under constant improvement!) M.E.A.N. stack (recent skill) HTML5/CSS3

Feature I have implemented through my career : ● WebGL (OpenGL) shaders programming ● Video/Image Processing in GLSL ● Augmented Reality applications ● Canvas and video streaming using WebRTC and Janus ● 3D geometries construction and transformations from scratch ● Oculus Rift DK2 application for the browser ● Stereoscopic effect for 3D glasses ● Mobile VR with Google Cardboard ● Motion Controlling Devices (Leap Motion) for the web ● Construction of 3D objects in optimal .stl file for 3D printing ● Multiple format compatible model viewer for the web (upload and edit .fbx,

.obj, .dae etc) ● Store complete WebGL application's state and restore ● Spatial audio (enhances the 3D navigation experience for the user) using

panning etc. ● Animations/Interactive 3D objects/Editable 3D objects ● Custom scene navigation techniques (WASD + mouse without mouse

hiding) ● Various material rendering techniques ● Scene interaction with mouse/keyboard, raycasting etc ● Constructive Solid Geometry feature (using a plugin for three.js) ● 2D HUDs for games ● 360° tours and panoramas (using a 6-image cube or an equirectangular)

● 360° video livestreaming using three.js, webrtc and a 360° camera

● 3DS Max and Sketchup model creation (small experience with these)

CAREER AIMS My aim is to always improve, learning and being more productive. Excitement in a project

is something that I value a lot too. This involves constant changing, growing and maturing.

A developer must not fear change but he must chase it and long for it. Darwinian evolution

proved that whatever doesn’t adapt to the changing environment stops existing. I aim to be an exclusively Web Graphics / Web Audio programmer with CSS3 + HTML5 of

course under my wing. I want to expand in all territories of Web Graphics and especially

Augmented Reality for the Web. I aim to specialize as much as possible in this, but also be

able to direct a team of Web Graphics Engineers in order to develop any big or small

project. REFERENCES Available upon request.