Resume

Last updated: May 9th, 2010

About Me

First Name: Cosmin
Last Name: Banu
Birth Year: 1982
Nationality: Romanian
Mobile: +40 728 875476
Email: cosminb@gmail.com
Country: Romania
State: Dambovita
City: Targoviste

Education

1998-2001 :: Constantin Carabella Information Technology College, Targoviste City, DB, Romania

  • Computer Analyst acknowledgement 2001
  • Grade Point Average: 9.54 (out of 10.00)
  • Final Exams Average: 9.68 (out of 10.00)
  • Educational Achievements:
    • Listed on National Informatics Olimpiad of Romania 1998 - 25th place
    • Listed on National Informatics Olimpiad of Romania 1999 - 13th place (Third Prize)

2001-2006 :: University of Valahia, Targoviste, DB, Romania

  • Received Diploma at The Annual Science Session, year 2003 (Software Simulation of an Industrial RRT Robot Arm)
  • Grade Point Average: 9.40

2006-current :: Ixia Communications, Software Engineer

  • Areas of activity: Graphical user interfaces, Windows Forms, DevExpress, General software development
  • Product development phases: Concept, Feature Specifications, Design Specifications, Implementation, Testing
  • Received Diploma of Excellence Award (2008)

Areas of Activity

C/C++/C# Programming in Windows and Linux
Website development, Database Maintenance (Linux / Apache / PHP / MySql)
Computer Hardware Assembly and Diagnostification
Computer Networks: Windows and Linux based (NFS, Samba, etc.)

Skills

Operating Systems :: Windows 98/XP/2003, Linux (Redhat, Fedora, Debian)
Programming Languages :: C, C++, C#, PHP, TCL
APIs :: OpenGL, .NET, GTK+, MFC, Win32
Web Development :: PHP, ASP, XML, HTML, Data Mining
Other :: Apache, MySQL, NFS, Samba, Linux Networking

Presentational

Implementation and Algorithmics Programming Knowledge
Strong Knowledge of the English Language
Fast Learning
Good Communication

Projects

3D Scanner (Diploma Project)

Author: Cosmin Banu
Type: School Project
Year: 2006
Tech/API: .NET Framework 3.0, WPF
OS: Windows XP
Language: C#, C++
IDE: Visual Studio 2005 Beta 1 (should work with the final version)
  3D Scanner Thumbnail

This is a project I made for my final year at the University of Valahia, Targoviste (Diploma Project). It provides a method to convert a real-life object to a digital representation. Also the resulted model can be converted to VRML, in order to be displayed in a browser, using a dedicated plugin, like the Octaga Viewer.

Downloads:
Documentation [Romanian]
Source

Screenshots:
Main Window
Motor Setup
Laser Setup
Camera Setup
Camera Geometry
Position Geometry
Scan Job Parameters
Scanning & Refining
FTP Publish
Scanner Site
Octaga Viewer

Debug Analyzer

Author: Cosmin Banu
Type: Work Project
Year: 2004
Tech/API: Windows Forms, .NET Framework 2.0
OS: Windows XP
Language: C#
IDE: Visual Studio 2005 Beta 1 (works under the final version too)
  Debug Analyzer Thumbnail

This project is "work made for hire", this is the reason I can only give you a few screenshots, no binaries or source code. The purpose of this application is to provide a more user friendly feedback from Symbian stack dumps when a panic occurs. The implementation features binary stream handling under C#, as well as custom drawing of Windows Forms controls.

Screenshots:
Main Window
HexView

Image Processing

Author: Cosmin Banu
Type: School Project
Year: 2005
Tech/API: .NET Framework 2.0
OS: Windows XP
Language: C#
IDE: Visual Studio 2005 Beta 1 (now works with the final version)
  Image Processing Thumbnail

This is a project I made for my Graphics Course at the University Valahia of Targoviste. It provides common image processing functions, like color filters, weight filters, level filters, image file handling, and others.

Downloads:
Documentation
Binary
Source

Robotix

Author: Cosmin Banu
Type: School Project
Year: 2003
Tech/API: .NET Framework 1.0
OS: Windows XP
Language: C#
IDE: Visual Studio 2003
  Robotix Thumbnail

This is a project I made for my Mechanics Course at the University Valahia of Targoviste. It shows an RRT robot arm (RRT - Rotation Rotation Translation) that can be animated through a series of editable movements. The animation file can then be saved/loaded. The robot arm also has a grip effector, which can be animated too. The project took about 5 days to code.

Downloads:
Documentation
Binary
Source

Geological Data Generator 2D

Author: Cosmin Banu
Type: Work Project
Year: 2004
Tech/API: OpenGL, GTKmm+, LibPNG
OS: Linux (Fedora Core 2, Suse 9.1)
Language: C++
IDE: KDevelop, Anjuta, GEdit (plain text edit with syntax highlighting)
  Geological Data Generator 2D Thumbnail

This project is "work made for hire", this is the reason I can only give you a few screenshots, no binaries or source code. It is intended to be used as a geological data generator in 2D space (matrix data). It features a flexible region editor, using splines that divide the matrix. After the editing is done, you can add value points, which then influence the data inside that region using a linear interpolation algorithm. You can save the data, as well as the splines, into files for later use. The project has many more features, like color scale editors, transparency scales, data layering (with transparency), ability to load data from png files, etc. Some of the featured screenshots are not those of the final application, they have been taken during the development process.

Screenshots:
Colorful
Data Generator Before
Data Generator After
Data Generator Black&White
Geology
Menus Open
Natural Geology
PNG Load "nicecar.png"
Processed Data 1
Processed Data 2
Scale Widgets 1
Scale Widgets 2
Colorbar Greyscale Modulus
Colorbar Greyscale Modulus Inverted
Colorbar Seismic
Colorbar Seismic Anomalous
Scrollbar
Translucent Arrays

Pseudo-Random Binary Sequence Generator

Author: Cosmin Banu
Type: School Project
Year: 2005
Tech/API: .NET Compact Framework 2.0
OS: Windows Mobile 2003 SE
Language: C#
IDE: Visual Studio 2005
  Pseudo-Random Binary Sequence Generator Thumbnail

This is a project I made for at the University Valahia of Targoviste. It implements a simple algorithm that generates binary sequences based on a given initial sequence. The algorithm is trying to generate as many unique sequences as possible. If it can generate the maximum number of sequences, then the initial sequence is said to be optimal.

Downloads:
Binary
Source

Screenshots:
Screenshot 01
Screenshot 02

Linear Regression - Least Square Method

Author: Cosmin Banu
Type: School Project
Year: 2005
Tech/API: .NET Compact Framework 2.0
OS: Windows Mobile 2003 SE
Language: C#
IDE: Visual Studio 2005
  Linear Regression - Least Square Method Thumbnail

This is a project I made for my Graphics Course at the University Valahia of Targoviste. It is intended as a simple demo application, that shows how a cloud of points can be approximated by a line. The algorithm used is the linear regression (least square method). Besides the graphical representation, the user can also see the numerical values that describe the resulting line equation.

Downloads:
Binary
Source

Screenshots:
Screenshot 01
Screenshot 02

Shape Transformation 2D

Author: Cosmin Banu
Type: School Project
Year: 2005
Tech/API: .NET Compact Framework 2.0
OS: Windows Mobile 2003 SE
Language: C#
IDE: Visual Studio 2005
  Shape Transformation 2D Thumbnail

This is a project I made for my Graphics Course at the University Valahia of Targoviste. It is intended as a simple demo application, that shows a 2D shape (drawn by the user), and applies all sorts of transformations to it (translation, rotation, scale, deform, rotation arount point). Also it lets the user view the current transformation matrix.

Downloads:
Binary
Source

Screenshots:
Screenshot 01
Screenshot 02
Screenshot 03
Screenshot 04

Terrain Generator GL

Author: Cosmin Banu
Type: School Project
Year: 2001
Tech/API: OpenGL
OS: Windows XP
Language: C++
IDE: Visual C++
  Terrain Generator GL Thumbnail

This was my final year highschool project at Carabella, Targoviste. The idea was to generate terrain data based on a few terrain grid control points, and then apply the plasma fractals algorithm. This would give us a terrain look of the data (which can be smoothed to avoid jaggy appearance). Also, we can raise or lower the terrain (with respect to the sea level), and we can apply custom height color scales.

Downloads:
Documentation
Binary
Source

Screenshots:
Main Window
Control Points Editor
Height Color Editor
Terrain 1
Terrain 2
Terrain 3
Terrain 4

Planar Reflection GL

Author: Cosmin Banu
Type: Hobby Project
Year: 2000
Tech/API: OpenGL
OS: Windows XP
Language: C++
IDE: Visual C++
  Planar Reflection GL Thumbnail

This is an implementation of the simplest types of reflection: planar reflections. The key to implementing it is the stencil buffer, and z-scaling by -1. The project is featured on NeHe's site (Lesson 26). To play around with the demo you need to know the following keys: arrows for spinning the ball, 'a' and 'z' to move forward and backward, 'pageup' and 'pagedown' to raise or lower the ball.

Downloads:
Binary
Source

Screenshots:
Screenshot 01

Reflection & Refraction GL

Author: Cosmin Banu
Type: Hobby Project
Year: 2002
Tech/API: OpenGL
OS: Windows XP
Language: C++
IDE: Visual C++
  Reflection & Refraction GL Thumbnail

The project features a cubemap applied to a sphere, and it implements two algorithms: reflection and refraction. The refraction algorithm lets you alter the index of refraction with the keys 'a' and 'z'. Switching between the two algorithms is done with the key 'm'. To view the scene in wireframe mode, use 'w' (press again to switch back).

Downloads:
Binary
Source

Screenshots:
Screenshot 01
Screenshot 02
Screenshot 03

Shadow Casting GL

Author: Cosmin Banu
Type: Hobby Project
Year: 2001
Tech/API: OpenGL
OS: Windows XP
Language: C++
IDE: Visual C++
  Shadow Casting GL Thumbnail

At the time of writing I found an article about shadow casting, but no implementation code, so I started coding this algorithm, and it turned out quite well. The project is featured on NeHe's site (Lesson 27). Just so you know the keys: arrows for spinning the cross, space to select the cross or the light, left mouse button to move the selected object in the horizontal plane, right mouse button to move the selected object on the vertical.

Downloads:
Binary
Source

Screenshots:
Screenshot 01

RayTrace GL

Author: Cosmin Banu
Type: Hobby Project
Year: 2003
Tech/API: OpenGL
OS: Windows XP
Language: C++
IDE: Visual C++
  RayTrace GL Thumbnail

This is a very simple raytracing algorithm implementation, that features only two types of objects: sphere and plane. It implements shadows (hard shadows; and soft shadows, by randomly altering the ray source location), diffuse lighting, and specular lighting. To switch between the two shadow types, use the key 's'. To quit, press 'q'.

Downloads:
Binary
Source

Screenshots:
Shadows Hard
Shadows Soft

Android OpenGL Demos

Author: Cosmin Banu
Type: Hobby Project
Year: 2009
Tech/API: OpenGL
OS: Android 1.5
Language: Java
IDE: Eclipse 3.5
  Android OpenGL Demos Thumbnail

This is a mobile app showcasing several of NeHe's OpenGL demos, ported on the Android platform. The tutorials range from the very basic OpenGL initialization, to showing more interesting effects like fog and reflection. Most of the demos also support the touch capabilities of the device, being able to rotate the displayed object.

Project page:
Android OpenGL Demos

Screenshots:
List of Demos
Reflection Demo