Jan Ringoš

software architect, programmer

Career objective

I am a person who care about professionalism in programming. I seek a constant improvement in my skills and broadening the range of my expertise. I wish to deliver work of excelent quality. I strive for thoroughness. My professional philosophy is influenced mostly by substantive experience with the C++ programming language.

Professional background

  • ELVAC IPC s.r.o., Ostrava

    • 2011 - Today, Full-time job, position of software developer of the project department realization team
    • Development of specialized software solutions in relevant industry domains, focusing on final data processing, user interface, andon and monitoring applications.
  • TELE DATA SYSTEM, spol. s r.o., Ostrava

    • 2005 - 2011, Full-time job, position of programmer-analyst and systems implementator
    • Engineering and development of data processing software, communication firmware for embedded hardware, and implementation of industrial communications protocols. Extending legacy SCADA system of new features required by present applications.
      Moreover I have designed and developed a number of XHTML/PHP/SQL web applications. Starting by CMS for the company website, ending with multicorporate issue & requests processing and monitoring system which is still being extended of new features at the present time.

Portfolio excerpts

  • Software products

    First of all, I have designed and built a number of proprietary client-server applications based on customer demands and deployment environment specifics. Naturally these are considered business secret and it wouldn't be appropriate to exhibit the details here. To see more about those, please visit websites or contact my current or previous employers. See following freeware products for further reference:

    • MX-3 Supervisor, Windows XP, 2003 and later, background system process
      A power-user utility for immediate suspension or termination of problematic processes, e.g. full-screen games or high-priority resource-intensive tasks. Efficiently complements the Task Manager or Process Explorer.
    • Dynamic Log Viewer, Windows 2000 and later, user mode application
      Inspired by linux tools, provides way for watching current state of processes or systems that log their status into plain log files. Used by developers in number of environments.
    • B-Cup XP, Windows XP and 2003, service with control panel
      Simple, fast and compact automated backup program, positively reviewed on freeware sites and by users all over the world
    • Visit Freeware page on my website for more...
  • Middleware and C++ libraries

    • EXT C++ Library, details and project progress: http://sourceforge.net/projects/ext/
      Set of various useful C++ classes, templates and macros that extend functionality provided by ISO C++ and standard C++ library. The aim of the EXT library is to provide a range of lightweight language and library utilities.
    • Brace C++ library details and project progress: http://sourceforge.net/projects/brace/
      Brace is a comprehensive C++ template library that parse, organize and serialize string-based human-readable hierarchical data. The contained format itself is easier to edit and maintain than XML, yet similar in philosophy and already widely used (in plenty of dialects).
    • eXtendable Binary library details and project progress: http://sourceforge.net/projects/xbinary/
      The XB Library is an effort to implement a library for manipulation with universal file format that would match the requirements of so called Binary XML. The XB data format allows fast and compact, yet still robust enough, serialization of trees of any arbitrary data.
    • Visit Papers & C++ page on my website for more...
  • Web applications and presentations

    • Tringi.MX-3.cz
      PHP/MySQL/XHTML 1.1/CSS, fully fledged programmer's website
    • TDS HelpDesk (not public)
      PHP/MySQL/XHTML, an extensive proprietary online issue tracking service with invoicing capabilities
    • www.ringos.cz
      XHTML 1.1 valid presentation, CSS styled, clean and readable code, simple but professional design
    • www.intextr.cz
      XHTML/CSS, designed an early version of company homepage
    • www.tds.cz
      XHTML/CSS, ordinary corporate webpage design, dynamic content (PHP), simple content management
  • Games and eye-candy applications

    • The Matrix Trilogy Screensaver, for official webpage see http://www.matrixscreensaver.150m.com/
      Project that aims to become the best The Matrix code simulation available as freeware.
    • Shoot 'em, Windows 2000 or newer
      Very simple and straightforward shooter game. What makes it unique is that its 3D graphics is drawn in full colors in text mode, similar to ASCII art.
    • Space 2004: Solar System, non-interactive real-time animation
      7 minutes long demo, made for Czech 3D Open Contest. Realistic visit of all planets in our Solar system. Silver in overal rating.
  • Talks and articles

Education

  • University of Ostrava, Czech Republic, unfinished

    Department of Informatics and Computers, Applied Information Technology. Left after seventh semester due to dissatisfaction with gained experience and due to poor results, caused by momentary work overload in particular. Still gained a lot of both theoretical and practical knowledge.

  • Industrial High School Makarenkova, Havířov, Czech Republic

    First class graduate in Electronics and Computer Systems field.

Summary of Qualifications

  • General programming

    • Algorithm developement, special experience in parsing and serialization
    • Networking, Distributed architectures, focus on implementation details
    • User interface design and development, user experience, simplification
  • ISO C++ programming language

    • Eleven years of strong experience in C++ programming language, STL and TR1 libraries, fluent in many features of C++11
    • Thoroughful awareness of most of the efficiency and safety idioms, coding styles, techniques and modern design patterns.
    • Extensive experience with fast, middle to large systems architecture analysis, design, team apportionment and implementation. Application of procedural, object-oriented and generic programming paradigmas where appropriate.
    • Template metaprogramming, paralel processing,
    • GNU Compiler Collection G++ extensions
    • Experience with scale of mainstream compilers:
      • GNU GCC G++ 4.6
      • Digital Mars compiler
      • MS Visual Studio
      • MS Visual C++ 6.0, MS Visual C++ 1.0 (16 bit)
      • ...
  • Internet technologies

    • XML 1.0 and 1.1
    • XHTML 1.0 (Strict, Transitional, Frameset), XHTML 1.1, HTML 5
    • AJAX, DHTML; DOM, CSS (2.1, 3.0), JavaScript (JScript, ECMA 262), JQuery
    • PHP Hypertext preprocessor (5.x), SQL (MySQL 5.x, MS Access and QBE)
    • Browser behavior unification, SEO
  • Windows API programming

    • Win16 API development for Windows 3.11 under MS Visual C++ 1.0 and Digital Mars compilers
    • Win32 API for Windows 9x/Me and NT (2000, XP, Vista and Windows 7 as well as Windows Server 2008)
    • 64-bit Windows API (Windows XP); design differences between 32 and 64 bit programming
    • Character-Mode Applications, Communications (Serial, LPT), COM, DLL, Multithreading, IPC (Pipes, Mailslots, Sockets, ...), Services, Networking (WinHTTP, WinInet, ...), Authorization, Crypthography, MCI, Windowing, Common controls, Common dialogs, Internationalization, GDI, GDI+
    • Windows XP Embedded
    • Windows 2008 Server Core
  • OpenGL

    • 2D, 3D graphic engine design, development and application, in-scene interfaces, rendering speed optimizations (scene space partitioning, LOD, VBO, ...)
    • nVidia and ATI extensions
  • x86 low-level development

    • Operating system routines, stub; Real and Protected mode development, Flat memory model, IO, IRQ, VESA graphics
    • Hardware, DMA, PIC, PPI, 8042, RS-232, ...
  • Microcontrollers and various embedded technology

    • ARM9 with μClinux embedded systems programming
    • C167-based systems development (16-bit C code)
    • x51 8-bit microcontroller series; competent knowledge of instruction set, hardware and connectivity potential
    • Wavecom based AT compatible modems, Open AT, WIPsoft, GPRS, SMS, ...
  • Other programming languages

    • C# programming language a .NET platform, basic level of MSDN Training, .NET Framework, Common Language Runtime
    • Java programming language and Java VM, Active X applets development
    • Pascal, Object Pascal, Delphi Language, applicable overview
    • Assembler x86 and x51.

Other Interests and Experiences

  • Experiences

    • Languages: Native Czech, fluent English. Modest experience with both-way (though not real-time) translation, notably of computer game subtitles and interfaces.
    • Marginal experience with graphic design
    • Type B driving license
  • Interests (besides software development)

    • Target practice, shooting sports
    • Computer games, especially real-time strategies