Personality
At work I'm a passionate developer; strong supporter of best practices and patterns; serious about code readability, maintainability and scalability; believe in testing. On the scale from quick-n-dirty to slow-but-thorough, I lean toward the latter.
Off duty, I'm a loving husband and father, an avid debater, a board game geek, a retired recreational cyclist, a crazy Russian and an affable guy with a slightly twisted sense of humor.
I live in Moscow, Russia. Love working remotely from other beautiful places. Able to adjust to your timezone for partial or full work hours overlap.
Online presence
- GitHub: lolmaus
- StackOverflow
- Twitter: @lolmaus_en
- Telegram: @lolmaus
- Gitter: lolmaus
- Slack: @lolmaus
- E-mail: [email protected]
Skills
Frontend development
- Over six years in frontend development
- Solid JavaScript skill, love modern tools, practices and patterns
- Sass enthusiast
- Highly experienced in Responsive Web Design, modular grids, mobile first, etc
- Using a BEM-like methodology to scale infinitely and prevent style leaks
- Not a visual designer
EmberJS
- Over three years working exclusively with complex Ember apps
- Have a gut feeling for the Ember Way and best practices
- Focus on building robust, maintainable and scalable codebases
- Strong believer in the Test-Build-Refactor cycle
- Into testing: unit & user acceptance, work in TDD/BDD style, API/model layer mocking, CI
- Experience with advanced features: polymorphic relationships, FastBoot, Concurrency, Element Queries, etc
- Active member of the Ember community with humble open source contributions
Other tech skills
- Proficient in using dev tools: git, terminal, SSH, Docker, package managers, build tools, StackOverflow/Google, etc
- Linux user, not a DevOps guy but have basic sysadmin skills
- Experience in distributed teams, SCRUM
- Know Ruby and looking into Elixir
- Active GitHub and StackOverflow profiles
Non-tech skills
- Fluent English
- Fast typist
- Aware of own drawbacks and will let you know of them
Open Source Contributions
Sass Libraries
slicing media queries with ease
collection of handy shortcut mixins for the Singularity grid system
Ember Addons
a set of custom assertions, aiming to substitute Chai in QUnit world. Go add your own assertions!
customizable implementation of alert
, confirm
and prompt
modal dialogs with straightforward API
drag'n'drop sortable list component, with support for multiple and nested lists
element query solution for your Ember apps
your complete emoji solution
render your LaTeX formulas using KaTeX
a link/button component that performs animated scrolling to a specified selector
A position: sticky
alternative that works inside parents with overflow: hidden
an extremely simple SVG pie chart component
use gist.github.com as a poor man's backend
an experiment with centralized state management, more appropriate in Ember than Redux
mark records as dirty when related records get dirty
Prismic.io integration for Ember
integrate with the Stamplay.com backend-as-a-service
Ember Apps
a test assignment I've done for Intercom.io
this website, please see a detailed description below
view YUIDoc/JSDoc documentation for any project and any branch/tag/commit directly from GitHub
a quick and naive implementation of immutable state management and time travel slider in Ember
JavaScript Libraries
standalone assertion library, aiming to be a tool for simple contract-driven development
Old jQuery Plugins
an opposite of closest()
: find the nearest child that matches a selector, ignore deeper matching children
a no-bullshit alternative to dragenter
and dragleave
events behaving like mouseenter
and mouseleave
, not mousein
and mouseout
Experience
Frontend Developer with EmberJS at Perforce.com, US
In September 2017 Perforce has acquired Deveo. The product has been renamed to Helix TeamHub, the development team has joined the Perforce family.
Backed by Perforce technology, Helix TeamHub delivers Git hosting and management with unique features.
- EmberJS/frontend development.
- HTML/CSS with Sass.
- Unit and user acceptance testing.
- API/model layer mocking with Mirage.
- Maintaining and refactoring legacy code.
- Building new exciting features.
Frontend Developer with EmberJS at Deveo.com, Finland
Fostering a product from developers, for developers.
- EmberJS/frontend development.
- HTML/CSS with Sass.
- Unit and user acceptance testing.
- API/model layer mocking with Mirage.
- Maintaining and refactoring legacy code.
- Building new exciting features.
Frontend Developer with EmberJS at Firecracker.me, US
An amazing adventure! The team was like a family to me.
- EmberJS/frontend development.
- Unit and user acceptance testing.
- API/model layer mocking with Mirage.
- Designing conventions, project structure and code style.
- Took part in API design.
- Heavy HTML/CSS development with Sass.
- Designing CSS methodology to scale infinitely and prevent leaks.
- Second tier of tech support.
Frontend Developer with EmberJS and AngularJS at Hell'o Baby, Russia
The flagship product of Hell'o Baby was originally implemented in Backbone, I led it's reimplementation from scratch in Angular. I did frontend developer myself and managed outstaffed devs.
I leveraged Ember to implement the company's internal admin panel. In its core was a builder of high-level database requests. A sophisticated form was generated dynamically according to a structure determined by the backend.
The resulting data selections were presented as various graphs built with Highcharts for analytics.
The admin panel also offered an email builder — for both newsletters and individual messages. All email templates were rendered live into a thumbnail gallery. The gallery could be filtered.
Hell'o Baby homepage contains complex canvas animations, designed by company's artists. In order to keep performance stable, I had to orchestrate animations, so that only currently visible animations were playing. Animations that appeared nearby were synchronized.
Frontend Developer for NasonPearl.ru, Russia
Implemented the frontend for the online jewelry store NasonPearl.
Frontend Developer at Healthfundr (now Health Rosetta.com), US (probation)
I was hired as an experienced frontend dev, yet what team really needed was a CakePHP dev with some Bootstrap knowledge.
For me it was a step back, so we mutually agreed to part ways.
Frontend Developer at Hivemind, Russia
- Prototyping the UI (linked above).
- Building the frontend.
- Working against a Rails API.
The MVP was complete, yet the project did not launch due to non-technical reasons.
See a prototype from 2014.
Head of Tech Dept at STKomp.ru, Russia
- Managing company's IT infrastructure.
- Building and maintaining company's website.
Graduated from Moscow State Technological University "Stankin" (Software engineer, Specialist degree)
Web Developer and SysAdmin at Alpha Media Buying, Russia
- Administrating company's network and servers.
- Building and maintaining company's website.
Web Projects Manager at ADV.ru, Russia
I was a manager in the department of supporting and extending existing projects.
My duties included:
- communicating with clients,
- estimating time and cost of implementing new features,
- breaking the features into assignable tasks,
- distributing tasks among visual designers, HTML/CSS coders, frontend and backend developers,
- controlling deadlines and quality.
Graduated from Moscow University of Foreign Affairs (BoA)
About This Website
This website is supposed to be a humble showcase of my skills and some Ember features.
It leverages the following technologies:
All pages are prerendered into static HTML and display immediately on page load. All links behave like regular HTML links. When the Ember app loads, it takes control, turning the website into an SPA. This is possible thanks to FastBoot and ef4/prember.
Internationalization (i18n): the website is available in two languages. UI labels, content and dates are translated. For translating UI, I use jamesarosen/ember-i18n.
Responsive Web Design is coded with the lolmaus/breakpoint-slicer Sass lib. It allows defining responsive rules effortlessly. I would use lolmaus/ember-element-query for granular control, but element queries require JS which is not available in FastBoot.
During build, the website is hitting GitHub and StackOverflow API to collect stats. As both services severely limit API usage, the app won't download stats if they're available from FastBoot.
GitHub authentication is implemented: log in to star/unstar projects without leaving the app.
Content is stored as Markdown with Front Matter. Carefully overridden adapters and serializers are used to work with endpoints and data formats.
I couldn't use offirgolan/ember-burger-menu because its menu is unavailable while app is still loading. So I googled a bit and implemented an off-screen menu with pure CSS. It has some restrictions, but overall result is super sleek!
Website source is available on GitHub: lolmaus/lolma.us.