Charles Iliya Krempeaux

Charles started off in Mathematics. Moved to Computer Science. Professionally worked many many years doing Software Engineering and System Architecture. And later discovered that some of that professional work was Data Science.

Charles also founded 6 companies of his own. And helped build 5 other people's startups.

Through this he also worked as a Product Developer. as a Manager, as an Executive, and as a Board Member.

Today Charles is working on a number of new startups, through a Venture Builder & Incubator.

Formally Charles has a background in Computer Science and Mathematics (and to a lesser extent Chemistry and Physics).

Professionally he has had software engineering, software management, product management, and executive roles.

As an engineer and architect, he has been everything from Chief Software Architect, System Architect, Principal Software Engineer, Lead Software Engineer, and Senior Software Engineer.

As a manager, he has been everything from CTO, Director of Engineering, Director of Technology, and Engineering Manager.

Charles has also been Product Manager and Producer.

And he is a frequent public speaker, covering topics such as Artificial Intelligence Machine Learning, Data Science, Software Engineering & Architecture, Computer Science, Career Advice, Cognitive and Behavioral Sciences.

Charles is also an author.

Although the first job he ever had was as a Math tutor, he started his career in the software industry at iFusion Communications as a Software Engineer & Project Manager. In 2002 he founded his 3rd company, the consulting company Reptile Consulting & Services, where he took on the role of Director of Technology. He became Principal Software Engineer and System Architect of online advertising network BidClix in 2004; and stayed through the Accipiter and aQuantive acquisitions. This technology was later acquired by Microsoft due to their purchase of aQuantive and is now owned by Facebook. Charles also consulted as a Senior Software Engineer & System Architect for a number years, creating technology for the real estate industry at Move's Top Producer, the oil and gas industry at Navarik, and others. He also created an Internet TV show, where he operated as Producer. Also when blogging first went mainstream, Charles founded a blog theming company, where he assumed all internal and extenal product ownership as Product Manager. In 2008 he founded 49 Research (with Radoslav Gazo), where he became Director of Engineering. In 2011 he joined HootSuite (while they were still a startup), and was 1 of the 4 senior members of the original HootSuite engineering team. Charles later joined Trulioo, where he headed the day-to-day activities of the engineering and data science teams. In 2013 he (again) started doing work for Electronic Arts. In 2015 Charles joined Koho, as CTO. In 2018 he founded Railtown Ventures, a venture builder and incubator based in Vancouver, where he operates as General Partner.

Also, Charles is organizer for the data science and machine learning meetup groups. An organizer for the data science learning groups. As well is co-organizer for the vancouver R user group.

Charles also has a history of open source contributions, open content contributions, and contributing to standards working groups.

Charles has been involved with developing open source software since 1996. In 2002 to 2003 Charles contributed as Software Engineer on Mono, an open source implementation of Microsoft's .NET Framework based on the ECMA standards for C# and the Common Language Runtime, by contributing to the development of the GTK+ and GNOME .NET bindings. In 2007 to 2008, he helped build an open source solution for Internet TV, video blogs, and video podcastings by taking on the role of Lead Software Engineer of the Show in a Box project. In 2009 to 2011 Charles took on the role of Senior System Architect on SkinnyMVC, an open source, light-weight, easy to learn, "skinny" MVC development framework for PHP. Today Charles continues by writing open source libraries in Golang.

Charles started authoring open content in 1997 to 2000 when he volunteered as Editor on Netscape's (and now AOL Time Warner's) Open Directory Project. In 2003 Charles Co-Authored "The Mono Handbook", a guide to the Mono runtime, related tools, and libraries developed by the Mono team, by writing the GTK#, GNOME# and Rsvg# chapters. Today Charles is currently writing an open content Machine Learning book for programmers.

In 2005 to 2010 Charles contributed to the creation of HTML5, through the Web Hypertext Application Technology Working Group (WHATWG) whose focus was primarily on the development of HTML and APIs needed for Web applications, including HTML5.

Charles' professional (and semi-professional) interests include "Strong" Artificial Intelligence (i.e., Artificial General Intelligence or Cognitive AI), Machine Learning, Artificial Intelligence, Artificial Life, Programming Language Design, Computational Social Science, and Complex Systems.

Charles also has an amateur background in Genetics, Evolutionary Anthropology, Evolutionary Biology, Evolutionary Psychology, Behavioral Ecology, Behavioral Economics, Moral Psychology, Psychometrics, Social Learning, Cultural Evolution, Computational Neuroscience, Austrian Economics, and Synthetic Biology.

Most of the work Charles does nowadays is under NDA, but he has done work in a number of different industries. Including (in alphabetical order):

Nowadays, most of the time, from day-to-day, when he is programming he usually programs in Go (also called Golang) creating highly available, fault-tolerant, scalable backends and distributed software applications. He is also no stranger to HTML, JavaScript, and CSS too, since the Web has become the ubiquitous frontend platform, even sometimes when doing mobile development. Charles is also a fan of Vala, Rust, Scala, and Erlang. However, when doing Data Science work, R may be the appropriate language at times; although at other times, to make things performant, coding things in Go may be necessary.

Over the years though, he has done work programming in a number of different programming languages (to different degrees) including (in alphabetical order): 68HC12 Assembly, 8086 Assembly, AHDL, bash (shell script), C, C++, C#, csh (shell script), Go, Erlang, Haskell, Java, JavaScript, LLJS, ML, Modula 2, Modula 3, Node.js, OCaml, Perl, PHP, PL/SQL, QBasic, R, Rust, Scala, Scheme, SQL, Tcl, Turbo Pascal, Vala, VHDL, etc.

Read his personal blog here. And subscribe to his person blog here.


Popular Blog Posts

Writing Fractions in HTML

Software Engineer Title Ladder

Making   work in XML, RSS, and Atom

Quick-and-Dirty Debugging in Golang

Function and Method Overloading in Golang

A Big 5 Personality Test, With Scoring

Dark Launching Software Features

What is Semantic HTML

The Proper Way to Use PHP's eval()

Facebook Application Developers
Top Facebook App Developers
Vancouver Web Developer
PHP Software Engineering
Computer Science Resume