Maxim Chernyak
- updated 08 Sep 2015
- github github.com/maxim
- blog hakunin.com
- twitter twitter.com/hakunin
- stackoverflow stackoverflow.com/users/155351/hakunin
- linkedin linkedin.com/in/mchernyak
- e-mail max@bitsonnet.com
- phone +1.347.729.2045
In Short
I come with over 10 years of web engineering experience, during which I've been pushing the limits of my knowledge and developing the eye and taste for doing the right thing. I've built a business from the ground up as a founder and CTO at Printio.ru, contributed to and started numerous open source projects, built and maintained various Ruby on Rails apps, architected applications of various sizes and ages, built infrastructures in Chef and subsequently Ansible as a devops engineer, discovered efficient ways of dealing with technical and organization pains of growing startups, and ensuring their smooth progress under budget constraints.
Expertise
- Ruby
- Rails
- Architecture
- git
- Ansible
- DevOps
- PostgreSQL
- Redis
- Teaching
- ElasticSearch
- Docker
- Chef
- Pairing
- Writing
- MySQL
- ImageMagick
- HTML
- CSS
- jQuery
- Sass
- Javascript
- MSSQL
- Oracle
Philosophy
I've been strongly inspired by the people behind some of my favorite books, like Robert Martin of Clean Code, Sandi Metz of POODR, and quite a few others. These books help us build flexible, decoupled software, yet there is a serious problem. Despite proper OOP, many well-meaning teams still end up facing friction stemming from premature architecture. This is something that I found hardly ever addressed in our community, and I am trying to ignite the convesation with this blog post titled "CMS trap".
Background
Before encountering the bliss of Ruby I have been programming in PHP, Python, .NET, C#, VB.net, C++, and even QBasic. Some of these endeavors go way back. My first program was a QBasic tool to help me solve math problems in school back in Russia. I was 9. My first C++ program was a phone number pronounciation utility, which combined snippets of my recorded voice to produce spoken compound numbers. I was 10. I'm a casual gym goer, hiker, and a PC gamer.
Education
For more than 2 years I studied at Polytechnic University (Brooklyn) pursuing a degree in Computer Science. I abandoned this pursuit a bit past half-way in. However, the courses in Algorithms, Data Structures, Discrete Math, and other fundamental computing-related subjects have taught me a lot.
Founder, CTO at Printio.ru June 2008 - Present
Printio.ru (registered in Russia) is an interactive online store for self-designed garments and stationery.
-
Rails and DevOps engineer at Printio.ru June 2008 - Present
Develop an e-commerce Rails app from the ground up.
Manage and teach junior developers.
Build various tools for rendering realistic product previews, such as Skeptick — an improved ImageMagick client for ruby.
Build integration with various APIs, such as Checkout.ru.
Build and maintain 20-server infrastructure using Chef and Ansible.
Setup and tune backend services: PostgreSQL, ElasticSearch, Redis, Node.js, Memcached, Sidekiq, various services and load balancers.
Consultant at Bitsonnet July 2005 - Present
Bitsonnet is a web development consulting company I founded with a colleague of mine (a front-end developer), where we built diverse client projects.
-
Rails Developer at MadMimi June 2011 - Present
Developed various client-facing features, with a particular focus on working with timezones.
-
Rails Developer at Turing October 2010 - June 2011
Worked on refactoring and optimizing a large legacy Rails application.
-
Rails Developer at unpublik.com (shut down) April 2010 - May 2011
Developed the back-end for a private file sharing system with media playback capabilities.
-
PHP/Python Developer at ARTstor, Inc March 2008 - April 2010
Developed SPOT (Python/Pylons) - a social network for society of historians/archaeologists.
Developed internal administration tools on top of large XML-driven databases (PHP5, Zend Framework, Oracle). -
Drupal Consultant at Aptana, Inc August 2008 - November 2008
Developed Drupal modules and themes for aptana.com.
-
Full-stack Developer at wehike.net January 2007 - Present
Develop and maintain a Rails app for a hiking club social network.
-
Drupal Developer at scripteka.com (shut down) 2006
Developed a Prototype.js extensions tracker in Drupal as a contribution to Prototype.js community.
Employee/Freelancer
-
PHP Software Engineer at Oddcast, Inc. July 2007 - February 2008
Co-developed Voki Playgrounds voki.com.
Developed PHP/MySQL tools for data gathering and statistical analysis.
Created internal administration interfaces. -
Drupal Developer at Stromberg Consulting March 2007 - July 2007
Developed Drupal modules and themes for intranets of companies undergoing merging processes.
-
VB.net Consultant at Marc S. Lemchen, D.M.D., PC. December 2006 - March 2007
-
C# Software Engineer at NYMIS September 2006 - December 2006