ALEXANDRU
SIMASCHEVICI

"If you love your job,
you never work a day in your life.
It's only fun and good times."

{ ICT ENGINEERING }

A few words about myself

I describe myself as being refreshing, lite and pleasent in every day conversations. I enjoy hearing out on people's opinions balancing every aspect with strong involvement and building up on subjects if possible and appropriate. My way of thinking is constructive and structured, and keeps a steep curve evolving upwards in every aspect, as much as possible. In order to keep a clear mind, sport and outdoors activities are always an option for a refreshing afternoon. I strongly believe that my work is a mirror of my style and way of thinking. It is most pleasent for me to share my knowledge with others, being open to learning more as well. A strong feeling of accomplishment embraces me when I have the oportunity to help. Backing away from a reaching hand is not acceptable in my opinion. Helping others you help yourself.

My favorite moto:
"If you love your job, you never work a day in your life. It's only fun and good times."

Programming skills

Java EE Java SE Maven HTML 5 CSS3 Angular JavaScript PostgreSQL REST SOAP OracleSQL MySQL C C# Asembly SAP Unit testing UML

Frameworks

Angular, Spring, Gradle, Grails, Jersey, JSoup, .NET, Bootstrap, Swing, RMI, Spring CORS, Jacoco, JQuery, Toad Extension, JUnit, CppUTest, JSON, SCRUM

Development processes

ETL, Client/Server Systems, Database design, Database normalization, Database functions, Database mapping, BI, Single user systems, Website development, Website design, Web Scraping, Search/Sort algorithms, Runtime Efficiency, Pattern based programming, Cryptography

Development platforms

IntelliJ, Eclipse, Visual Studio, Brackets, Atmel Studio, Oracle SQL Developer, Abap SAP, Astah, Git, Wordpress, XAMPP, Apache Server

Competences gained during Bachelors program

Bachelors in ICT Engineering - VIA University College : Data Engineering

Java programming constructs; Basic types in Java and their applicability; The role of fields, methods, constructors, and references in Java programming; The relationship between array, array length, indices and elements in Java The elements of UML class diagrams, activity diagrams and sequence diagrams.

Understand the concept behind design patterns and be able to implement and use design patterns. Implement data types and data structures in Java using interfaces, generics etc. Implement data types in Java using interfaces, generics etc. Acquire skills in clients/server programming with RMI Perform unit testing Demonstrate the knowledge of documentation of analysis and design Use best practices for writing and documenting Java source code. Ability to develop software using Scrum and Unified Process.

The students will be able to design the architecture of a distributed system using the 3-tier model design and implement a distributed and on different platforms using various middleware.

  • Java
  • Swing
  • File IO
  • Agile Development
  • Unified Process
  • SCRUM
  • Data Structures
  • Remote Method Invocation
  • Client Server Structure
  • Design Patterns
  • Software Testing
  • Client/server Systems
  • Peer-to-peer systems
  • 3-tier architecture
  • Rpc/rmi middleware
  • Web services middleware
  • Object orientation in distributed system
  • Concrete middleware systems
  • Cloud computing

Master the basic skills for programming using C# language. Have the basic knowledge of the .NET framework and be able to choose the best technology for different problems. Have the basic knowledge of Internet technologies: WEB servers, Protocols, Client side versus server side programming.

Internet technologies: WEB servers, protocols, Server side WEB programming C#. Programming: Basic program structure, Properties, events, indexers, operator, overloading, Generics, Delegates, Interfaces.

  • C#
  • .NET Framework
  • Common type systems
  • ASP.NET
  • Winforms
  • WEB Services

The main purpose of the course is to introduce a set of theories, tools, and practicable methods in order for students to obtain a profound knowledge and practical skills of web development with the ability of creating web sites running on PC and mobile devices using basic web programming and design combined with jQuery.

Having completed this course, students will be able to: Create web sites using Hyper Text Markup Language (HTML5); Style web pages using Cascading Style Sheets (CSS3); Using responsive web-Design to design web sites that are platform independent; Create “smart” web sites using jQuery, and Bootstrap.

The student will gain knowledge of the following topics: HTML5, CSS3, W3C Validation, Responsive web-Design (Multiplatform), jQuery, Bootstrap

  • HTML5
  • CSS3
  • JQuery
  • JavaScript
  • Bootstrap
  • Responsive Design

Design, implement and analyze different algorithms; Become acquainted with different advanced data structures; Construct larger programs using the above.

Be able to analyze algorithms using the Big-O notation; Be able to implement algorithms and data structures in an object oriented language; Be able to use algorithms and data structures to solve specific non-trivial problems; Be able to make good choices of data structures for a specific problem; Be able to implement larger and effective programs; Be able to analyze and improve existing programs.

  • Algorithms and their characteristics
  • Algorithm analysis and Big-O notation
  • Trees
  • Heaps
  • Graphs
  • Data structure and algorithm usage

The main purpose of the course is to provide students with an introduction to computer architecture and low-level software design, including tools and theory neededto write working software for embedded systems (ASM/C).

Explain numbering representations, including two’s complement to represent negative numbers in the binary numbering representation. Understand the functionality of basic logic gates, half- and full-adders, flip/flops, etc. Understand how Karnaugh maps/Boolean expressions can be used to reduce Boolean expressions. Explain the architecture of simple CPUs and how they function, explain the build and working behavior of basic building blocks of CPUs (registers, ALUs, etc.). Explain assembler programming. Clocks instruction set layout, memory architectures, addressing modes. Explain basic C programming artefacts and constructs. Understand pointers and simple data structures in C

  • Logics
  • Numbers and number representation
  • Digital electronics (gates, flip/flops, etc.)
  • Boolean algebra and Karnaugh Maps Computer architecture CPU
  • Memory
  • Stack
  • I/O
  • Buses
  • Instruction set architecture
  • Assembler programming
  • Absolute and relative branches
  • Subroutines, calling conventions
  • Logical operators
  • C-Programming
  • Functions

The main purpose of the course is to gain a basic understanding of computer networks and the protocols used in the Internet.

Knowledge about the nuts and bolts of the Internet; Understand layered abstractions in TCP/IP; Understand World Wide Web; Understand the Internet’s naming system; Understand how electronic mail systems work;Understand addressing in a TCP/IP network

Configure a small office/home office (SOHO) network based on Ethernet technology. Analyze network traffic using packet sniffer software. Clients/server programming with sockets. Configure computers to communicate on a network. Understand and discuss protocols on a professional level.

  • TCP/IP
  • Application level protocols
  • IP addressing
  • Network configuration
  • Socket programming
  • Responsive Design

Students will obtain knowledge about designing larger database systems, including aspects such as performance, indexing, stored procedures and functions, user/privilege managements, transaction management, advanced queries, DBMS technologies, etc. The student will obtain skills that put the student in a position to map all taught theoretical topics into practical use on a typical commercial Database Management System, for instance Oracle™.

DBMS software, memory and disk architecture. Algorithms for index maintenance and index use. Optimization of physical data structures and related search algorithms. Understanding different concurrency protocol implementation, related algorithms and their ramifications for practical application tuning. Monitoring and troubleshooting database activity. The Oracle Wait Interface, TKPROF. Understanding and using the optimizer, statistics and histograms. Systems and server tuning. Internal and performance consequences of different data access strategies and JDBC techniques

  • Tables and constraints
  • Users, roles, privileges
  • Views
  • Triggers and PL/SQL
  • Indexes
  • Transactions
  • Security
  • Database Normalization
  • ER Design
  • Database Mapping
  • Systems and server tuning
  • Monitoring and troubleshooting database activity

The course will give the student a general familiarity with the processes, concepts and uses of data warehousing in both business and technical applications. The main focus of the course is practical techniques and methods for designing and implementing coherent data warehouse structures and data flows.

Demonstrate an understanding of the business motivations for data warehousing and be able to identify examples of the business value of information hidden in the data of operational systems. Understand the difference in design principles for operational (transaction processing) systems and systems for supporting ad-hoc querying. Understand the relationship and difference between dimensional database modelling and traditional entity-relational modelling. Apply knowledge of dimensional database modeling to design databases optimized for querying. Perform overall architectural design of a data warehouse, based on an understanding of the architectural components such as back room, front room, operational data stores, data marts, data staging areas, metadata etc. Demonstrate knowledge of different tools and techniques available to implement data flows in a data warehouse, including a working knowledge of at least one major ELT tool. Plan, design and implement Extract, Clean-up, Transform and Load data flows from multiple sources into a data warehouse. Understand and apply knowledge of performance optimization and security in a data warehouse. Be aware of the general business, ethical and social aspects of the use of Data Warehousing with respect to topics such as data credibility, electronic privacy etc.

  • Business motivations for data warehousing
  • Transaction processing
  • Dimensional database modelling and traditional entity- relational modelling
  • Architectural design of a data warehouse
  • Data flows in DW
  • Design and implement ETL
  • Performance optimization
  • Business aspect of Data Warehouse

To introduces main aspects within design and implementation of ERP systems and SAP ABAP/4 Programming.

Describe change management for new systems. Use ABAP Workbench and basic ABAP language elements. Explain the relationship and difference between the classical procedural programming model and the object-oriented programming model in ABAP/4. Apply screen flow logic and working with external data. Apply different tools and techniques available to implement dataflow in an ABAP program with database. Design and implement an object-oriented SAP application with a database and ALV Grid.

  • ERP architecture
  • SAP ABAP/4
  • Screen flow logic and working with external data
  • Implement dataflow in an ABAP program with database
  • AVL grid for data table

Use problem solving techniques for solving different types of complex problems in applied computer science Implement different algorithms for searching and sorting Implement solutions in Java using threads

Use basic problem solving techniques, including recursion. Implement and use different searching and sorting algorithms. Use single and multiple dimensional arrays to solve and implement different types of computer science applications. Implement thread-safe classes when constructing programs with several concurrent threads or activities.

Basic problem solving techniques, including recursion using single and multiple dimensional arrays for various computer science applications.

  • Searching and sorting
  • Programming with threads
  • Numerical methods
  • Statistical functions
  • Vector and matrix implementations

The main purpose is to qualify, identify and protect against threats against computer systems and the data of computer systems.

Be able to identify various threats know various protection mechanisms be able to use and implement various data encryption technologies knowledge of one or more security standards

  • Security threats
  • Private key and public key encryption systems
  • Symetric encryption systems
  • Digital signatures and message digests
  • Key distribution
  • Access control and protection mechanisms
  • Security standards

The continuous efforts made within information technology (IT) not only affect a diverse array of areas within the development of modern society but also affect them in many different ways. In much the same manner, IT itself is conditioned by its historical, technological, and social contexts. The main purpose of this course is to examine the (sometimes implicit) assumptions about knowledge and the creation of knowledge made by engineers and scientists within their field. The objective is to gain a deeper understanding of the way engineering and science is conducted, and a basic understanding of fundamentals business activities in an IT company.

After successfully completing the course, the student will be able to: Relate critically to empirical-analytical theory and among other things be able to discuss what knowledge is, how it is generated and how it relates to practice; Reflect upon and enter into discussions about computer science perspectives in academic contexts; Assess the relationship between scientific knowledge and practical experience in creating new technologies; Describe types of knowledge and competences composing engineering practice; Discuss and understand key elements of the economic side of IT and business

  • Scientific methods to solve practical engineering problems
  • Annual Reports as a source for getting information about companies
  • Understanding of aim and techniques for budgeting and calculations

Work experience

Junior System Engineer

Systematic

Feb. 2018 - Jul. 2018

Internship - Job responsability implies full stack development of features, writing requirements for new features, fixing bugs and improving solution, all in accordance to CMMI 5 regulations. Development was mostly done in Java with different frameworks. Frontend development was done in Grails, Angular and HTML.

Company website: systematic.com

Software Developer

IT Minds

Nov. 2017 - Feb. 2018

Job responsability implies full stack development of features,fixing bugs and improving solution. Development was mostly done in C# and .NET with other frameworks. Frontend development was done in .NET MVC with HTML.

Company website: it-minds.dk

Student Instructor

VIA University College

Sep. 2017 - Dec. 2017

Job responsability implies helping the students from 1st semester to solve the programming exercises required to pass the course. Preparations are required before each workshop.

Company website: via.dk

Front-end developer

Aske Design Horsens

Jan. 2016 - Ongoing work

Job responsability implies building software using Java or PHP, websites using HTML, CSS, Bootstrap and Wordpress platform, for private clients. Design related tasks are also part of the job.

PC Techniker

Curvature Skanderborg

Dec. 2015 - Oct. 2016

Job responsability implies repairing DOA laptops provided by Lenovo. The work flow had to be developed by me. Procedures and tests were conducted as a followup of the work flow.

Company website: curvature.com

Web Development Freelancer

Upwork.com

Nov. 2013 - Oct. 2014

Website Design, Webshop Design, Printed Material Design. - HTML, CSS; - WordPress, Volusion, Magento platforms; - Photoshop specialist; - Design specialist;

Company website: upwork.com

Education

ICT Engineering - Data Engineering

VIA University College

Feb. 2016 - Jun. 2019

Bachelors of Engineering in Programming, System architecture, Data engineering, Client/Server Systems, using Java, C#, UML, SQL, Asembly, C ...

Civil Constructions Engineer

University of Petrosani

Oct. 2005 - Jun. 2008

Bachelors of Engineering - civil and industrial building design, calculations, work planning, advanced structural calculations...

Finance and Banks

University of Petrosani

Oct. 2005 - Jun. 2008

Bachelors of Economics - resource menagement, accounting, bank structures, bank operations, workflows, low applied in banking...

Programmer - medium level

Math and Informatics High School

Oct. 2001 - Jun. 2005

High school degree Programming using C, C++, Borland Pascal. Study of mathematical algorithms, Website design and development