Krzysztof Kowalczyk
|
Software | Software that I wrote or contributed to, roughly in chronological order. My open-source projects are at github.com/kjk and code.google.com/u/kkowalczyk. | ||||||||||||||||||||||
|
pigz windows port |
Ported pigz from Unix
to Windows. Technologies used: C. |
|||||||||||||||||||||||
|
Open Garden |
As a contractor working for Open Garden, I've implemented a
new installer for Windows app, silent auto-update system for Windows app,
crash reporting system for Windows app, adapted open-source tap driver
for use in Windows app, wrote new installer and silent auto-update system
for Mac app, crash reporting system for Android app, wrote continuous
integration buildbot for Windows, Mac and Android apps. Technologies used: C++, Objective-C, Python. |
|||||||||||||||||||||||
|
App Translator |
Web service for crowd-sourced translations. Technologies used: Go, Unix. |
|||||||||||||||||||||||
|
Volante |
Small, fast, object-oriented, embedded database engine for C#/.NET. Technologies used: C#. |
|||||||||||||||||||||||
|
Fotofi |
A windows application for finding free stock photographs. Technologies used: C#, WPF. |
|||||||||||||||||||||||
|
VisualAck for Mac |
Like grep (or ack) but with GUI. Technologies used: Objective-C, Cocoa (Mac native UI framework). |
|||||||||||||||||||||||
|
OpenDNS Dynamic Updater |
Informs OpenDNS server about changes of IP address in a user's computer. Technologies used: Objective-C, Cocoa (Mac version), C++/Win32 API (Windows version). |
|||||||||||||||||||||||
|
OpenDNS Diagnostic App |
Diagnose DNS issue. Technologies used: Objective-C, Cocoa (Mac version), C#/Winforms (Windows version). |
|||||||||||||||||||||||
|
OpenDNS Netgear Client |
OpenDNS settings management utility for Netgear routers. Shipping with OpenDNS-enabled
Netgear routers. Technologies used: C#/Winforms. |
|||||||||||||||||||||||
|
uTorrent for Mac |
Took over unfinished code from a contractor. Finished and shipped
first version. Technologies used: C++, Objective-C, Cocoa. |
|||||||||||||||||||||||
|
uTorrent for Windows |
Contributed code fixes and mac/unix port of the core (non-ui) code. Technologies used: C++. |
|||||||||||||||||||||||
|
BitTorrent SDK for Devices |
Principal author of the SDK. Technologies used: C++. |
|||||||||||||||||||||||
|
Blog engine |
I wrote my blog from scratch. Technologies used: Python, Google App Engine. |
|||||||||||||||||||||||
|
Fofou |
Forum software on Google App Engine. Open-source, hobby effort. Technologies used: Python, Google App Engine. |
|||||||||||||||||||||||
|
SumatraPDF |
PDF viewer for Windows. GUI part (around 10k lines of C++ code)
designed and written from scratch by myself using just Win32 API. Performance improvements
to existing
pdf rendering engines. Open-source, hobby effort. https://www.ohloh.net/p/4623/contributors/19855633811562 Technologies used: C++, Windows API. |
|||||||||||||||||||||||
| WebKit |
Engine behind Apple's Safari browser. Contributed Windows
and Linux/Gtk fixes. Received commit rights and
review rights for the Gtk port https://www.ohloh.net/p/WebKit/contributors/14027363190890 Technologies used: C++, Linux/GTK+ API. |
|||||||||||||||||||||||
| Pdf viewer for Foleo |
Written from scratch by me at Palm for cancelled Palm Foleo. Technologies used: C++. |
|||||||||||||||||||||||
|
Messaging |
SMS/MMS messaging application for Windows Mobile-based smartphones, shipped on
Treo 750 and later. Part of 3 person team that wrote the application from scratch
(60k lines of C++ code in total). Technologies used: C++, Windows Mobile API, SMS, MMS, COM. |
|||||||||||||||||||||||
| wTail |
Small application that implements GUI version of Unix's tail for
Windows. Open-source. Technologies used: C#, WinForms. |
|||||||||||||||||||||||
| scdiff |
Small application for previewing CVS and Subversion checkins. Open-source. Technologies used: C#. |
|||||||||||||||||||||||
|
InfoMan
|
Wireless information manager for Palm OS. Technologies used: C++, Palm OS API for the client. Python and MySQL running on Linux server for the backend. |
|||||||||||||||||||||||
|
iPedia |
Encyclopedia for Palm OS, MS Smartphone and Pocket PC (now known
as Windows Mobile) Technologies used: C++, Palm OS API, Windows Mobile API for the client. Python and MySQL with full-text search running on Linux server for the backend. |
|||||||||||||||||||||||
|
iNoah |
Wireless dictionary for Palm OS, MS Smarphone and Pocket PC. Technologies used: C, Palm OS API, Windows Mobile API for the client. PHP, Apache, MySQL running on Linux server for the backend. |
|||||||||||||||||||||||
|
Thesaurus |
Thesaurus for Palm OS. Technologies used: C, Palm OS API. |
|||||||||||||||||||||||
|
Noah Lite, Noah Pro |
English dictionary for Palm OS. Implemented very good and fast
compression so that definition lookup was fast and yet didn't consume all available
memory. At the time Noah Lite was the most popular program for Palm OS (as judged by
PalmGear download statistics, more than 500.000 downloads). Technology used: C, Palm OS API, Lisp, custom-designed compression scheme for dictionary data. | |||||||||||||||||||||||
|
AOL Server |
Ported AOL Server
(HTTP server like Apache) from Unix to Windows, including an libxml-based nsxml module and PostgreSQL
drivers. Technologies used: C. | |||||||||||||||||||||||
| Microsoft SQL Server |
Part of a team working on XML technologies (implementing
XML Schema as part of XQuery query language). Technologies used: C++, XML, SQL, XML Schema, XQuery.. |
|||||||||||||||||||||||
| Microsoft Exchange |
Part of a team working on store, a core exchange component.
Technologies used: C++. |
|||||||||||||||||||||||
| French dictionary |
Java applet. School project, part of 3 person team. Designed
and wrote storage backend for efficient transmission of definitions over HTTP.
Technologies used: Java. |
|||||||||||||||||||||||
| Web-based english-polish dictionary |
Web front-end to english-polish dictionary.
Technologies used: perl, CGI, Apache. |
|||||||||||||||||||||||
| Dictionary for DOS |
Port of Amiga's english-polish dictionary to DOS, in C.
Technologies used: C, DOS. |
|||||||||||||||||||||||
| Dictionary for Amiga |
In high-school wrote an english-polish dictionary for Amiga OS,
in 68000 assembly. GUI viewer and editor for editing dictionary database.
Technology used: Amiga OS, 68000 assembly. |
|||||||||||||||||||||||
| Employment history |
|
|||||||||||||||||||||||
| Skills |
Expert software engineering, software design, software construction skills.
8+ years of professional programming experience. Expert C and C++. Expert Palm OS and Windows Mobile (Pocket PC) programming. Advanced Windows OS programming. Mac OS X programming. Used to be expert in Amiga OS programming. Experience programming on Unix. Used to be expert in 680x0 assembler (when programming for Amiga OS). Advanced in Python. Programmed in: JavaScript, Java, C#, SQL, Perl, PHP, x86 assember, Lisp, Scheme. Know about: TCP/IP, XML, networking protocols (HTTP, POP3, TELNET, FTP, SMTP), HTML, web technologies, Unix administration, databases (MySQL, SQL Server, Postgress), web servers (Apache, AOLServer), SMS, MMS, XML Schema Expert debugging skills: used Visual Studio, WinDBG, cdb, gdb, MetroWerks CodeWarrior for Palm. Assembly-level debugging on x86, ARM and 68000. Extensive experience with source-code management tools (2 internal Microsoft tools, CVS, Subversion). Extensive experience with bug-tracking tools (internal Palm and Microsoft system, used Bugzilla, Sourceforge's and Google Code's bug tracking). Familiar with profilers (used Microsoft's internal profiler tools to diagnose and fix performance problems in Exchange. Used valgrind on Linux and AQTime on Windows). Good writing skills Excellent knowledge of Palm OS, Pocket PC/MS Smartphone market. |
|||||||||||||||||||||||
| Education | French engineering degree equivalent to Master of Science in Telecommunication/Computer Science from ENST de Bretagne, France, 1998 |