Mihai Voicu

Software Engineer at INTEL SOFTWARE DEVELOPMENT SRL, BUCURESTI
Experience
  • Software Engineer at INTEL SOFTWARE DEVELOPMENT SRL, BUCURESTI
    IT / TelecomIT Hardware, Software / Programming
    July 2011 - present
    Create software tools for system characterization (hardware and software).
  • C++ and Java Programmer at ANAIS Consulting & Software Services, BUCURESTI
    IT / TelecomSoftware / Programming
    October 2009 - June 2011
    Develop and support C++/Java applications in a Linux/Internet environment. Implementing audio/AAC headers processing in C++ and high concurrent request processing in Java (server side, TCP/IP + HTTP + XML API). Batch processing for large amount of data.
  • L3 Support engineer - Team leader at EservGlobal Telecom Romania, Bucharest
    IT / TelecomSoftware / Programming
    January 2008 - September 2009
    .
    Debugging and fixing software problems in the company products that are in production

    - I receive a problem from L2 Support in the company problem tracking system (namely CFS)

    - make a first analyze, isolate the faulty module in the C++/SQL/Java part, based on traces/logs, SQL selects, Unix core debugging

    - make a detailed analyze on the specific module, reading the related code

    - write and test the fix (mostly in C++) if it takes less that 1 week. Escalate to Development if a longer development is needed

    - build/deliver the fix to L2 Support, taking into account the dependencies with other modules

    - writing/supporting testing tools - simulators, load test tools, automatic non-regression test tools

    - coaching new members of the team
  • Software Integrator - Team leader at EservGlobal Telecom Romania, Bucharest - software outsourcing for www.eservglobal.com [LSE: ESG]
    IT / TelecomSoftware / Programming
    May 2005 - November 2007
    .
    - coordinating a team of 9 software engineers: training, coaching and evaluating the engineers in the team. Acting as Technical Project Manager for Integration projects and L3 Support for the problems after deployment.

    - working in a multinational environment, keeping daily contact with project managers in France, using email and phone (in English). Between other activities, my work included:

    - I have run manual and automatic tests, including load test. I have debugged the encountered problems until the C++ or PL/SQL code, including performance problems due to the bad index usage. I have written Perl/Shell tools to ease the testing and analyze, including an automatic test framework based on plugins.

    - As "Level 3 Support" tasks, I analyze problems discovered in site, including the creation of C++ patches. I have contribute in the analyze and solution for special C++ problems in Unix environment: TCP/IP sockets, signal handling in multithreading environment.

    - I have installed and administrated 3 Solaris 5.8 servers. I have given support occasionally for Unix related software problems, like dynamic linkage, scripting, performance. I have setup Solaris 10 zones (with ZFS filesystem) to be used as virtual machines in Integration campaigns.

    - I have installed/administrated 4 Informix database servers, starting with chunk allocation on raw devices or cooked files, multiple dbspaces for table and index fragmentation. I have performed database import/export, I have created tools for importing data on a different (compatible) database structure and for resizing the extents of an exported database.

    - I have configured the Unix/Solaris test environments: packages, libraries, TCP/IP ports, message queues and shared memory allocation, environment variables.

    - I have participated in the recruitment process for people in my team and 2 people in another team. I have done coaching and periodic evaluation for my team, I have participated in defining the global evaluation process.
  • Technical Coordinator for the Bucharest TCP/IP network (bussines unit) at Romania Data Systems, BUCURESTI
    IT / TelecomSoftware / Programming, Telecommunications
    July 1999 - April 2005
    I coordinated a team of 20 engineers in charge with the last level of support (L3/L4) for the TCP/IP network in Bucharest:
    - more than 20 IP routers
    - more than 200 intelligent (configurable) switches - with vlan tagging, electrical/optical links
    - more than 10 Linux servers (Email, DNS, WEB, CRM, monitoring, provisioning)
    - more than 20.000 broadband cable modems

    - I had "hands on" experience in configuring/debugging Linux, Unix, Cisco 6500/3750/2900, Allied Telesyn routers and switches, Arris CMTS 1500 cable modem controllers

    - I have worked in creating and administrating the "Ip over cable" and "Voice over cable" modem provisioning system, based on Docsis/MCNS technology. The provisioning system was created "in house". The system was able to automatically generate the configuration files using the database service definition.

    - I acted as project manager for "in-house" soft projects (on Linux/Unix platform): WEB based CRM, network monitoring & reporting (MRTG/RRD tool based), data warehouse. I have defined the high level software architecture and database structure, I have contribute with solutions for critical performance issues, I have write medium size applications in C++, SQL, Perl.

    - I have established/supervised the network topology evolution in a fast growing condition. I have established quality metrics regarding the network performance and upgrade priorities. I have established working procedures.

    - I have occasionally meet strategic clients for defining the technical solution (presales)

    - I have done recruiting and periodic evaluation for the engineers in my team.
Education
  • Universitatea - Facultatea de Matematica si Informatica, BUCURESTI
    Master / Postuniversitary degree
    1999 - 2001
  • Universitatea - Facultatea de Matematica si Informatica, BUCURESTI
    University (graduate)
    1995 - 1999
Skills
General:
- I am able to work either in a standalone technical position or in a team leader / middle management position
- I have experience in management of big projects: infrastructure, software, technology migration
- I have studied methods for enhancing productivity: project management (including "MZT 865", by Codecs), time management, mind mapping, communication

Software skils:
- C/C++ on Unix/Linux: including Unix sockets, signals, dynamic linkage, using debugger
- Perl, PHP: object oriented, regular expressions, hashes, database integration
- Complexity of algorithms: critical zones, complexity evaluation and optimization
- Advanced data structures: trees, hashes, finite state machines, abstract grammars
- Advanced algorithms: hashes, tree balancing, solutions tree, genetic programming, NLP
- Java (J2SE/J2EE): - starting with 2007. Completed "Java Advanced" training by "LEC" in 2008.
- Experience with Z80 assembly language in the past (including the maskable interrupt)

Unix Solaris/Linux:
- Installation
- Configuration
- System tuning & optimization
- Security, Linux firewall
- Software support (environment, IPC, dynamic linkage debugging, system tuning)
- Programming (C++, Unix Shell scripting)
- Experience with Solaris, IRIX, Slackware, Suse, Gentoo
- Unix C programming (faculty optional course)

Databases/SQL:
- Informix: installation, configuration, chunks/dbspaces allocation, database restore
- Mysql on Linux (installation, programming)
- SQL: index optimization, Informix stored procedures (PL/SQL) debugging

Security:
- threats and solutions: firewall, IPSEC (public keys, private key exchange, hashing), one time password, one time authentication
- Cryptography theory (optional course in faculty)

Network configuration & design:
- Cisco and Linux configuration, redundancy, Quality of Service, Switching, Vlan trunking, Static routing, Dynamic routing (BGP), Security

Others:
- Basic electronics knowledge: power consumption, RF/optical budget, analog and digital modulations, RF equipments
- Experience as trainer (TCP/IP, OSI Layers)
- Basic Statistical Analyze: estimations by medium/dispersion, data mining
- Negotiation and advanced sales (training Trend Consulting)
- Recruiting and career management
Foreign languages
  • English - Advanced
  • French - Medium
Competencies
Projects
I have designed an abstract automatic testing engine along with plugins to test Eservglobal products

I have designed and wrote an IP Denial of Service detection and filtering system, using C++/Linux/Packet sockets

I have designed/wrote an IP Accounting system core for more than 20.000 IPs from Cisco flows or IP packet capturing. I have wrote the core in C++, implementing tree search and creating a custom memory allocator. I have designed the database storage structure and the web frontend.

I have designed a CRM "inhouse" and a ticketing system (Perl / MySql / Linux)

License paper: I have designed/programmed an Internet search engine on Unix

Disertation paper: I have designed an abstract firewall definition and reprezentation, then a low cost updating alghoritm
Prizes
Recommandations:
- Dragos Valceanu (+4) 0720.770.780 - RDSLink Technical Coordinator at Romania Data Systems (until 2005)
- online recommendations (needs registration): http://www.linkedin.com/in/mihvoi
Man of the year - VoMS team, year 2006
Conferences
I have represented RDS in "Capital" newspaper and TV (TVRM - “Forum IT” - 3 times)
Hobbies
Computers/Internet, Music, Literature