Showcase
Although incomparable with the sparse space, here are some of my proud crafts!
In the outline, the following list contribution to open source community and then my projects.
It is very precious and protected list 🛡️. You're allowed to touch the glass, though 🧊.
In-Office Collaboration
In the following, I'm going to elaborate what I've done or take a work part in the industry settings. For a more complete career path I've taken, please refer to my LinkedIn profile.
DomaiNesia
I'm a software engineer and manager that led DomaiNesia development and data team. I described myself as enabler, someone who facilitate others in order to improve their workflow and build upon my works.
July 29th, 2022 - Deployment Pipelines
Originally, we only have two web docker instances: development and production. To test new feature, we checkout the development instance into some git branch we want to test out. We have more than three developers. Obviously, this workflow causing some stepped toes. If a stakeholder want to preview her feature, she asks us and we check them out. At the same time, some other feature is currently being tested. We need a better infrastructure.
I built the initial version of this pipelines on July 29th and announce it to the team. Basically, it consists of NGINX web server, configurable proxy, routing web interface, SCM server pipeline, and Docker. Until now (2 years), it has been improved with specific needs of our software, and I'm the sole maintainer.
2021 - Developer Automation
Doing repetitive JIRA activities and BitBucket is cumbersome. There are also workflow on other teams that we previously handle the request manually.
I built a Typescript server application that handles tasks revolving around Slack, JIRA, and SCM server.
2020 - Development Workflow
In 2020 to 2021, we have significant increase in human coleagues (we have bots and anima too 😃). Due to this, we're reiterating our flow of development by studying models available: TBD, git flow, GitHub flow, etc.
At last, we refine these aspects of our flow:
- Task Priorities and Assignment System
- Code review flow
- Automation to support above system
Open Source Contributions
I love an open software where I can use then edit and contribute if necessary. It's been very fun to hack the tools we used. In the same time, it can demonstrate my knowledge and interest.
Nushell
Nushell is my main shell. It is powerful due to its data oriented design. I love bleeding edges but usable software that visioning a better future. That's why Nushell and NixOS is my choice.
I pull-requested some changes:
Add Kitty protocol keyboard enhancement support - link
Ctrl+i key shortcut is impossible to differentiate from Tab in traditional terminal emulator. Along with that, other key combinations also can't be recognized.
As Colemak user, it is a disappoinment and detestment to an old technology 🍅. Why? Look that letter i is one of motion keys. Fortunately, someone already created Kitty protocol that extend this behavior and able to recognize even the mouse scroll event.
I decided to make Nushell support this protocol. In the time of writing, it is under review but I've used it in my daily life.
Add inapplicable condition on menu activation and navigation - link
In short, make typing hint and completion menu works in harmony. Previously, pressing Tab always showing completion menu even with no suggestion. Moreover, when only one suggestion remain, the completion menu still shown and the user still needs to select it.
GNOME Autoar
Make "Extract Here.." on context menu available on certain archive files - link
I tracked down why "Extract Here" doesn't shown in GNOME file manager Nautilus. Turns out, the file detected as some type that is an alias of supported archive mime types. The detection is on GNOME Autoar which also uses C language.