Resume

John Ostrowski

United Kingdom

 pjostro@yahoo.ca

SOFTWARE ENGINEER

A passionate and detail oriented Software Engineer with 7 years’ experience designing customized and innovative solutions to meet ever changing business needs in diverse industries. An effective and proactive learner who excels at uncovering information, debugging software and figuring out how systems work. Advanced skill with leading edge programming tools and the capacity to assimilate and utilize new technologies. Excellent troubleshooting skills, the ability to carefully analyze problems and the confidence to ensure ideas are heard. Technical proficiencies include:

Environments

Windows, Linux, Yocto Project, GNU Binutils, GCC toolchain, RTOS (uTasker, FreeRTOS, RTX),

Mercurial, SVN, Perforce, GIT

Languages

C / C++, HTML (Ajax & DOM technologies), CGX Scripts, Javascript, Python, Bash, UML Modelling

(Artisan Studio), MISRAC, Structured Text

Microcontrollers

FreeScale: ColdFire M5222, Cortex M4 K60, Cortex M4 K66; NXP: Cortex M3 Lpc1752,

Renesas: H8SX; Microchip: PIC; Atemel ARM 9, AVR ATMega 16

Communication

CAN, RS485, I2C, RS232, SNMPv3, MODBUS, USB, PPP, DNP3, TCP/IP networks, TCP, UDP

PROFESSIONAL EXPERIENCE

SOFTWARE ENGINEER October 2012 – Present

Servelec Systems PLC, Sheffield, United Kingdom

Key Technologies: UML, C++ , JavaScript, Keil RTX operating system, CPLD, PLC, Isagraf

  • Recently promoted to Senior Software Engineer for displaying diligence and the ability work independently with minimal supervision

  • Secured the largest sale for company by customizing software to communication with their devices via SNMPv3

  • Model functionalities of remote telemetry unit in UML according to customer specifications; contributed to 1 500 000 sale for organization by demonstrating to key customer that communication was possible with their devices via SNMP3

  • Wrote a complex driver for MODBUS protocol, specified a set of 56 tests for driver to ensure optimal functioning

  • Design, and produce code for communication protocols; engineer customized features and devise enhancement for updates

  • Optimize application by conducting detailed testing of code and utilized problem solving skills to detect errors and resolve issue

  • Analyze user requirements and considered customer feedback when designing and implementing new features for user login system, communication channels log, MOBUS, SNMP, PPP and system log

  • Produce dynamic web pages for embedded web service using AJAX technology

  • Due to Linux knowledge was selected to integrate Linux originated SNMP library by compiling source code; implemented application layer to manage oids, devices, and notifications etc.

  • Configure device parameters (IP, time, calibrate touch screen) and verify that settings are correct by creating test plans and cases and executing automated tests in Python

  • Learned HTML and JavaScript to create web pages allowing users to configure devices’ parameters

  • Integrate Isagraf runtime engine with PLC device functionalities to allow users to run custom applications written
    in IEC61131 languages (Structured Text and Function Block Diagram)

SOFTWARE ENGINEER May 2011 – August 2012

UTC F&S, Gdansk, Poland

Key Technologies: Linux, Review board, Coverity, GNU tools (gdbserver, gcov, gprof)

  • Worked in a team of 3 to improve efficiency of code by employing the use of Coverity to locate bugs and resolve issues

  • Maintained 700 000 lines of C code; conducted code review, developed new features, wrote unit tests and resolved bugs

  • Increased personal efficiency when debugging code by using gdbserver; gained exposure to gcov and gprof

  • Advanced knowledge of Linux and learned good coding practices including inspection, testing and source code analysis

  • Ensured code was compatible with ACPO standards and produced application that supported this objective

  • Automated user account creation by utilizing AtoIt which reduced process from 8 hours to 2 and allowed team members to dedicate efforts towards other projects

  • Encouraged the use of gdbserver to run applications on target devices and monitor actions

EMBEDDED SOFTWARE ENGINEER May 2010 – May 2011

Vector Sp.z.o.o, Gdynia, Poland

Key Technologies: Preemptive operating system FreeRTOS, DOCSIS, RF communication, fiber optics

  • Created and updated implementation documentation for optical node and set top box (head end) front panel

  • Collaborated with co-workers to design device hardware and produce device prototypes; requested design be modified in order to reduce amount of memory used by application

  • Designed and wrote GUI code for optical node

  • Delivered new features on time by optimizing code and significantly decreasing the amount of memory usage

  • Implemented and tested protocol based on SNMP between UI and DTV set-top box

CONSTRUCTOR – PROGRAMMER  October 2008 – December 2009

Zaklad Elektoniczny SiMS sp.z.o.o, Bydgoszcz, Poland

Key Technologies: IspMach CPLD, C, C++, wxWidgets, CAN, RS485

  • Wrote application for information display device using Dev-C++ IDE and GCC compiler

  • Designed peripherals extension board based on external memory interface and CPLD

  • Performed reverse engineering to determine how passenger information system worked; participated in hardware design specification based on thorough understanding of system and helped company secure sale

EDUCATION & TRAINING

COMPUTER NETWORKS 2010 – 2012

Gdansk University of Technology, Gdansk, Poland

Complete 3 of 4 semesters (part time)

MASTER OF SCIENCE – TECHNICAL PHYSICS 2003 – 2008

Focus: Computer Metrology & Control

Nicolaus Copernicus University, Torun, Poland

  • Graduated with a 90% average

LINUX KERNEL AND DRIVERS DEVELOPMENT (4 days training) 2015

NATIONAL ELECTRONICS WEEK UK (twice) 2014, 2015

EMBEDDED LINUX CONFERENCE 2014

EMBEDDED DESIGN SHOW (twice) 2012, 2014

WORKSHOPS – Cortex (NXP, ST) TI MCU Day, X-Fest, dsPIC and BLDC motors 2006 – 2009

ACHIEVEMENTS

Second prize (twice) in competition of sumo robots, sponsored by Volkswagen

References Available Upon Request