Nasser G.

Consultant

750 dollar
Freelancer
18 years
Mulhouse, FRANCE

My experience

More

Ammbr Group (International)August 2017 - Present




IT Consultant & Architect.
- Establishing basic principles and designing base products with the ability to expand and evolve.
- Managing groups of new-hire engineers with regards to coding standards and patterns.
- Ensuring smooth token swap in an ERC-20 ICO market.
- Managing and participating in the development of Mesh-Network routing algorithms designs.
- Designing and implementing secure-messaging applications using .NET, C#, WPF, Unity, Network.
- Designing back-end management software (VS2017, C#).
- Designing an ERC-20 transaction audit for an end-user token-swap (C#, WinForm).
- Designing an Android background service for block-chain access (Android Studio, Java).
- Participating in board meetings and taking charge of the technical side of the enterprise.
- Support and participation in back-end C++ coding based on FreeRTOS for embedded devices.Technical Environment: VS2017, C# 7.0, WPF, Unity IoC, C++, Embedded Linux, MVVM, Android Studio (3.1.3).
More

Titan Midwest (United States)August 2017 - January 2018




Hardware Architect.
- Analyzing the application and its feasibility using FPGA and Memory Array.
- Designing the processing engine and the work-distribution engine.
- Designing front-end management software (C#, WPF).
- Working on Gigabit Ethernet connectivity issues.
- Working on multi-phase switching controllers (>90% efficiency).
- Developing controller design applications (in C for the compiled Linux image).
- High-Speed PCB Design (DDR3-1600, GbE, LVDS).
- Compliance with CE, FCC and UR.
Technical Environment: C# 7.0, WPF, Unity, C++, Embedded Linux, FPGA (Xilinx), Vivado design suite, High-Speed PCB Design.
More

S.G.S.March 2017 - August 2017




.NET Consultant &  Architect.
- Reviewing the company's previous-generation (known as AdelSoft)
product (done in VB.NET and VB6) and deciding on a migration path
towards WPF .NET using the MVVM pattern.
- Analyzing the actual system in place and designing the end-product with backward compatibility in mind.
- Determining the best strategy for long-term durability and maintainability.
- Managing and training the IT team, providing them with knowledge on the WPF framework, MVVM and IoC patterns.
- Revising and redesigning the company's database architecture.
- Participating in board-meetings on updates regarding the project's status.
- Introducing software design patterns (Code Coverage, Unit-Test compatible code, ORM).
Technical Environment: C# .NET 5.0, WPF, Task Parallel Library (TPL), VB.NET, VB6, Unity, NHibernate, Microsoft SQL Server.
More

HoneywellSeptember 2015 - March 2017




.NET Consultant & Architect.
- Revising an under-use product and redesigning another product previously developed in VB6.
- Analyzing the system in place and designing an end-product with backward compatibility in mind.
- Determining the best strategy for long-term durability and maintainability.
- Managing communication bandwidth limitations to ensure real-time responsiveness.
- Fault detection and correction in the Trend Network.
- Packet and session analysis for Bottleneck Detection.
- Migration of previous VB.NET-generation libraries to C#.NET.
- Migration of old VB6 Active-X systems to the new .NET technology.
- User-Space support software design.
- Maintaining daily contact with the London team to ensure a proper synchronization between the R&D departments.
Technical Environment:
C# .NET 4.5 & 5, Task Parallel Library (TPL), VB.NET, VB6, WinForm, WPF, ModBus, BACnet, NCrunch, JIRA.
More

I.T.G. ConsultingJune 2013 - September 2015




Chief Technology Officer (CTO) at Butterfly Labs Inc.
- Managing the High-Tech I.C. Solution design chain (Chronicles, IBM Global Foundaries in Dresden Germany, Xilinx, Altera).
- Managing engineering teams (in mechanics, embedded systems, industrial, ASIC and PCB).
- Simulation systems design (ModelSIM, Embedded-C, Atmel Studio).
- Designing computer boards and their devices' drivers (Altium Protel, C++, WDF).
- Designing front-end support software (C#, WinForm).
- Silicon chip production and successfully completing two generations (65nm at 500K $ and 28nm at 7M $).
- FPGA Experience: Stratix III, Stratix IV, Aria 2 GX, Cyclone 4, Spartan 6, Virtex 5, Lattice ECP2, Lattice SC.
- Managing four sub-contractors.
- Embedded firmware design and optimization (based on C++ and Verilog).
- Running the company's Technology Design and Development Department.
- Managing full product design cycles and assembly processes.
Technical Environment: C# .NET 4.0, C++, WinForm, Verilog, Altera, Xilinx, WDF (Windows Driver Foundation).
More

Société Générale – ITEC/CTT/CTYAugust 2012 - June 2013




C# / .NET Consultant.
- Design and evolution of software solutions for the Commodities market (Exotic
Products, OTC, Energy, Credit and CVA), software based on C#, .NET and
WCF with a heavy use of Multi-threading methods to accelerate both
responsiveness and treatment of high-volume information.
- Correction, functional development and Unit-Test design.
- Design and integration of transaction filters.
- Credit Value Adjustment (CVA) Infrastructure and Service Design.
- Exotic Products integration into new Trading Software.
- Correction and evolution of communication protocols in a SOA architecture (Server Offloading, etc.).
- Migration of old VB6 projects to the .NET technology (Meteor migrated to .NET under FirstAccess and Pandora).
- Transaction deals using SQL scripting for processing and archiving.
- Design of WCF services for various departments.
- SQL Query Performance Optimization.
- Working in an Agile environment.
- Collaboration with stock-market Traders and Quants.
Technical
Environment: C#, Visual Basic 6, WCF, WPF, DevExpress, MS SQL,
Resharper, FX-Cop, StyleCop, Sybase Database, NHibernate.
More

Française Des Jeux - LOTSYSSeptember 2011 - August 2012




C/C++ Consultant for Embedded Systems.
- Development,
evolution and optimization of the company's Middle-Ware (a.k.a. F3G) and
their front-end application (known as Neptune), both designed to be
executable on Linux and QNX environments.
- Collaborating with the Product-Owner on a daily basis.
- Correction and design of Unit-Tests for existing and new modules.
- Multi-Case module integration (used for firmware updates using both UDP and TCP protocols).
- Evolution of primary communication protocols with FDJ servers (heavily encrypted).
- Bar-code analysis / generation for both the standard (Matrix, EAN-128) and the home-built ones.
- Build-System improvement (made using Python).
- Linux Kernel compilation, customization and modification.
- Design of secure (AES-128 encrypted) RPCs.
- Memory footprint optimization and leakage detection/fixing (using Valgrind).
Technical
Environment: C++, C, BOOST (Fusion, StateCharts, MPL, Tuples), Design
Pattern, Extensive Multithreading, IBM Rational Synergy, IBM Rational
Change, CxxTest, libCurl, SCons, Doxygen, Embedded Linux Kernel.

Participation in the development of various projects within the company.
I.
F3G (Middleware), a motherboard with various components (communication,
image-processing, database, etc.).- Infrastructure design &
maintenance.
- Transactions analysis.
- Device management (Device-Drivers).
- Image and bar-code analysis / generation.
- System software upgrade via USB and 3G.
- Printing subsystem optimization.
- SVG Image-Decoding for ticket generation.
- Secure communication channel management (TLS, SSL).
- Peripheral firmware upgrade.
- Touch-screen calibration.
- Camera calibration.
Technical
Environment: C++, C, BOOST (Fusion, StateCharts, MPL), STL, Design
Pattern, CxxTest, libCurl, Doxygen, SCons, Multithreading, GTK2.

II. ATU - A main Firmware & Middleware Upgrade Software (via USB and 3G channels).
- Downloading packages from the USB storage.
- Decompression algorithms (LZW, Huffman).
- Multi-Cast and Unit-Cast connection management.
- Corrupted package detection & correction.
Technical Environment: C++, C, BOOST (Fusion, StateCharts, MPL), STL, libCurl, Doxygen, make, Extensive Multithreading.

III.
Neptune - Front-end part of FDJ Terminals, a software which relies on
F3G and ATU for operation.- Development of the User & Client
Interface.
- FDJ transaction treatment.
- Printing FDJ tickets.
- Image analysis.
- Meeting various needs while using ATU and F3G.
- Terminal functionality validation.
Technical Environment: C++, STL, BOOST (StateCharts, MPL), Linux Kernel (2.6.30), Doxygen, GTK2.
More

Marchal Technologies S.A.S.February 2008 - September 2011




Software Design Engineer (.NET / SQL).
- Participation in the creation of the company's main ERP, a software
which subsequently was able to increase its efficiency by 48%, helping
them to survive the recession.
- Analyzing business needs and maintaining contact with various departments to address functional needs.
- Designing the full architecture of a product.
- EDI, User Interface, Web Interface and Desktop Interface design.
- Designing Unit-Tests for the rapid validation of newly modified code.
- Designing customized printing modules to address accounting and clients' needs.
- Centralized database architecture design (along with mirroring).
- Managing clients' requirements for electronic data interchange and inter-company electronic transmissions.
Technical Environment: C#, VB.NET, WPF, WinForms, Multithreading, SVN, NHibernate, SQL Server 2005/2008, ASP.NET Web-Interface.

Participation in different projects within the company.
I. EDI Subsystem - Interchanging business data between clients and Marchal technologies (Inter-ERP) using XML, CSS and EDI-FACT.
- Providing support for various EDI formats (more than 20 clients use this module).
- Windows-service design for the automatic EDI functionality.
- Web-interfacing for client access to EDI integrated / exported data.
Technical Environment: C++, C# 3.5, Design Patterns, ASP.NET, SQL Server 2005, SubVersion, EDI-FACT, XML, JSON.

II. Database Archiving.
- Analyzing actual data structure and determining the archiving strategy.
- Designing and implementing scheduled archiving scripts.
- Evolution of the archiving module based on database structure modifications.
Technical Environment: SQL Server, Scripting.

III. A software designed to mimic Crystal Reports, but customized to meet corporate needs more efficiently.
- Dynamic Object Placement.
- Dynamic Database Interrogation.
- Development of a WYSIWIG architecture.
- Supporting up to 100 pages for single-print attempts.
- SQL command analysis and safety checks.
Technical Environment: C++, C# 3.5, Design Pattern, SubVersion, GDI+, Component Model Design.

IV.
A software designed for ASUS Mini-PCs designed to enable truck drivers
to maintain communication with a database for rapid status updates.
- Manual SharePoint database analysis.
- Design specifically suited to ASUS EEEPC.
- File & data synchronization via 3G.
Technical Environment: C# 3.5, WPF, Design Pattern, SubVersion, SQL, SharePoint Database, Windows API Functions.
More

Iran Telecomm Research CenterDecember 2004 - September 2007




Embedded System Design Engineer.
- Designing a microcontroller-based embedded software, along with supporting PCB and hardware.

Participation in different projects within the company.
I. CRD Messaging - Communicating with SATCOM systems (Analog RF with FPGA used as DSP processor).
- Analyzing project needs and goals.
- PCB 8 layers (Impedance-Matched).
- Firmware design using C++.
- VHDL/Verilog module design (for DSP and FPGA).
- Antenna matching circuitry.
- PCI local storage engineering.
Technical Environment: Embedded C++, Multithreading, Xilinx, VHDL, Verilog, TCP/IP Network, USB, MATLAB, XML, Eclipse.

II. An electronic monitoring device with Windows compatibility (WDM Device Driver, GUI).
- Device-driver design WDM (C++ WDM XP, C++ Kernel).
- User-level Windows software design (.NET).
- Multithreading in Windows (User Space).
- Multithreading in Kernel (Kernel Space).
- Radar data processing (C++, FFT, DFT, FIR, IIR).
- Real-time data presentation.
Technical
Environment: Embedded C++, Direct-Draw, Embedded Multithreading, Visual
Studio 2002, SVN Subversion, Eclipse, WDM (Windows Driver Model),
Mathematics (FFT, DFT, FIR, IIR).

III. A single-board ARM9 computer design with specific interfacing capabilities.
- Analyzing project needs (software & electronics).
- Firmware Development (C++, Assembly).
- Linux Kernel compilation (Kernel 2.6, C with MMU).
- Radio signal analysis (FSK, PSK, QPSK Analysis).
- Voice signal analysis.
- GUI using GTK.
Technical Environment: Linux C++, Linux C Kernel, SVN Subversion, Eclipse, Mathematics (FFT, DFT, FIR, IIR).
More

Iran Science and Technology Research CentreOctober 2003 - October 2004




Researcher & Engineer (Bio-Instruments).
- Designing bio-instruments & life-support product interfaces.

Participation in the development of a project regarding the communication with Body-plethysmography.
- Analyzing project needs (device drivers & GUI).
- Analyzing device drivers in C++.
- Designing a user software using Delphi 5 (and Delphi 6).
- Graphical medical data presentation in real time.
- Embedded AVR firmware design.
Technical
Environment: MS VC++ 6.0, C++ (WDM), CVS, Windows API, Windows SHELL,
SGBD Interbase, Assembly, Bio-Medical Signal Treatment, Artificial
Respiration Control.

My stack

Databases

SQL Server, MS Access, MySQL, PostGreSQL, Interbase, Transact-SQL, ADO.NET, Sybase

Frameworks

.NET, WCF, Swing, WPF

Big Data

Blockchain

Protocols

OLE, TCP/IP, JSON, Modbus, BACNet, USB

ERP&CRM

SAGE

Open Source solutions

Qt

Hardware

Digital Signal Processing

Environment of Development

Visual Studio .NET, Android Studio, Eclipse, IntelliJ Idea, Resharper, IBM Rational Synergy, Visual Studio 2017, SVN, JAVA FX, NetBeans, Make

Industrial automation

Xilinx

Languages

Matlab, VHDL, Verilog HDL, C#, MVC, ODBC, Shell, VB.NET, Visual Basic 6, Delphi, C/C++, XML, Java, STL, DHTML, Verilog

IT Infrastructure

Linux, Windows, Fedora, CentOS, Linux embedded, Linux4Sam, SuSE Linux, Ubuntu, Git, Debian, Windows API

Graphic

GTK+

Embedded and Telecom

PCB Design, Satcom, Vivado Design Suite, Analogue Modulation (QPSK, QAM, GSK, FSK), Embedded C, FPGA, Lattice Diamond

Software testing

CxxTest, NCrunch, FXCop

Technologies

NHibernate, SCons, TPL, Unity, WinForms, DevExpress, SharePoint, Altium DXP, Altera Quartus, BOOST, LibcURL

Others

Leadership, Doxygen, DVB-S2, Multithreading, IBM Rational Change, GDI+, Project Management, DCT, Team management, EDIFACT

Analysis methods and tools

Design Patterns, JIRA, Agile, Confluence, MVVM, StyleCop, GCC, MVP, CVS

My education and trainings

- Bachelor's Degree in Telecommunication Engineering - Tehran University, Iran.2004 - 2007