Full-stack developer
I started programming over two decades ago, as a teenager. It was just fun at the beginning, but quickly moving to assembler on the good-old C-64 allowed me to start building some real stuff. That lead me to demoscene where I spent few years. Later on I have switched to Amiga 500 and then Amiga 1200, eventually with PowerPC processor. That allowed me to learn details of various architectures and processors, invaluable knowledge nowadays. So many young coders use scripting languages without realizing how their programs really work underneath!
While the above were just amateur/hobbyistic activities, in early 2001 I have started professional career and started living from programming. I started working for company named ADB and spent about 8 years there. It was very educational experience, since I was able to learn from very good coders there. Moving from junior programmer to senior one, then to a team leader took me about 3 years. Since then I've started to manage other engineers, which meant that I had to learn a completely new skill set. As I am always reading lots of books, I guess it was then when I started to study management/leadership books, something which I still continue to do.
Work at ADB taught me enough for me to become one-man army kind of coder. I typically know every layer of the projects I'm working on, and I am able to complete whole project single-handedly, starting with architecture design, going through implementation to deployment.
The skills described above allowed me to eventually quit my daily job and become full-time freelancer, which I've done in 2009. A short period of doing lots of small projects arrived. That was some iPhone programming and small web development gigs, among other. But since over the years I've grown fascination about building tools, functional programming, compiler design theory, and algorithmic trading (especially on Forex), most of my freelance projects were related to Forex trading.
In the freelance period of my life I've got occasional chance to lead some team, but that become a norm again when later on I started to work with CodeProject.com - well established educational portal for developers. At CP we've done few big projects, for which I had set up polish branch of the company. It required me to build whole office from scratch and run it for few years. It involved activities from finding the rooms, through accounting, legal works, team organization to do the full architecture of the projects, implementation of many vital parts to deployment. As I've hired the team along the way it allowed us to combine our skills and complete the projects. The resulting applications were highly scalable rich internet applications, with many distributed server-side modules. Few dozens of commodity servers eventually were made to serve our apps and doing Git hosting, video streaming for our video courses portal, complex task management. And those applications were bound together by a generic framework for unifying interface to third-party apps, similar to Facebook Apps.
Being CTO at polish branch of CodeProject allowed me also to make my first real entrepreneurship steps, something I would like to continue in the future. So, if you need strongly technical co-founder for your startup, I might be the right person.
Since I know how computer works from the very low level, going through driver layer, kernel, OS, and above till the very high level applications, and I typically know the business around the applications as well, I think that allows me to consider myself as a full-stack developer.
I am currently open for new opportunities, both as a hired gun, and as a co-founder of an interesting projects. If you would like to team up with me, I can bring solid hands-on experience on application building, through all phases from early product definition till deployment and maintenance. Since I am also experienced manager, I can help you with your business not only by relieving you from all technical details of the project. If that is something you look for, do not hesitate to contact me immediately.
CodeProject Europe Ltd.
Nov 2012 - Aug 2014
CTO
Fully set up and ran Polish branch of CodeProject.com, including team selection, office setup, project management and devops. Created architecture and developed critical parts of of multiple rich web applications (::Workspaces - framework for organizing third-party applications into projects, CodeProject.tv - video course portal, ::Tasks - advanced tasks management, ::GitMachine - Git hosting).
KB.Projekt
Aug 2009 - Present
Owner / Freelancer / Self-employed
Mostly lots of small freelance projects, usually Forex-related (e.g. wrote countless expert advisors in Metatrader 4's MQL language). Also some iOS development.
Tieto
Mar 2011 - Jun 2011
IPTV consultant
Consulting IPTV project, developing several modules (e.g. EPG), providing experience to shape the overall project architecture.
Tieto
Jul 2010 - Dec 2010
Senior IPTV developer / team manager
Leading UI team in IPTV project, engineered architecture of UI layer of the project.
Advanced Digital Broadcast
Jan 2008 - Jul 2009
Director of Middleware Department
Managing few groups of IPTV professionals, developing bleeding-edge IPTV technology.
Advanced Digital Broadcast
Dec 2004 - Dec 2007
IPTV Engineering Expert
Heading a team dedicated to adaptation & extensions of Mozilla/Firefox browser to the set-top-boxes. Also leading large-scale IPTV projects, resulting in hundreds of thousands devices sold.
Advanced Digital Broadcast
Dec 2002 - Dec 2004
Senior Developer
Development of server-side linux applications for digital TV head-end systems.
Advanced Digital Broadcast
Mar 2001 - Dec 2002
Junior Developer
Development of applications for embedded systems.
Technical University of Wrocław
2001 - 2006
B. Sc. in Computer Engineering
Thesis: Computer system of distant examination design using the C or Java programming language
English
fluent, in July 2007 earned First Certificate in English (level B2) issued by British Council
Polish
Native
Spanish
Beginner
German
Beginner
Books
SF, fantasy, economy
Compiler theory
Hello World!
Algorithmic Trading
Forex
Physics
E=mc2
Recently I write mostly in JavaScript / CoffeeScript. In the past I've used to wrote a lot in Ruby, C++, Java and assembler. I like functional programming a lot, as it often leads to simpler programs than objective programming. After doing a lot of web development and programming for embedded Linux I've learned also a lot of related languages.
My frameworks of choice are Node.js for server-side programming and Ember.js for client-side development. I have written many applications in Ruby on Rails as well.
During my web development and devops activities I've learned lots of related tools.
I have a well-rounded skill set in:
ul. 9 Maja 10 66-015 Przylep, Poland |
|
+48 784 520 108 | |
kamil@nopik.net | |
http://nopik.net |