Mateusz Zaremba
Software Engineer
Current Role
Open to new opportunities. Available to start immidiately.
Core Expertise
Web Development
- Languages: TypeScript, JavaScript.
- Frameworks & Libraries: Angular, React, Ionic, StencilJS
- State Management: RxJS, MobX, React Query
- Styling & UI: HTML5, CSS3, SCSS, SASS, Bootstrap, Angular Material, Material Design.
- Web Graphics & Components: Advanced graphics with Three.js and custom web components developed using StencilJS.
- Development Tools: npm, yarn, ts-node, semantic-release, es-build, Webpack.
Backend Development
- Server Frameworks: Node.js, Express.js, NestJS.
- Databases: MongoDB, SQL.
- Cloud: AWS Lambda, AWS S3
Containerization with Docker
- Docker: Advanced Docker skills including Docker Compose, Docker Hub. Contributed to secure building of Docker images with private npm packages.
Continuous Integration & Deployment
- Deployment: Deploying Angular apps inside an Nx Workspace using NginX Docker containers, automated with GitHub Actions.
- Semantic Release: Employed the semantic-release tool for automated versioning and package publication, relying on commit message semantics. Customized release types using specific tags, as outlined in the
.releaserc
configuration, such as this example.
Software Architecture
- Design & Workflow: Leading initiatives to shape software design, architecture, and team workflows using tools like Nx Workspace.
Tools & Scripting
- Scripting: git bash/zsh (daily aliases & functions), TypeScript scripting using Node.js file system.
- CLI Development: Building CLI utilities with TypeScript and Commander.js.
- IDE & Code: VS Code, MS Visual Studio, UNIX terminal, XCode, Android Studio.
Graphics Programming
- Graphics Programming: graphics programming projects with Three.js, understanding of quaternion math and linear algebra.
App Development
- Cross-Platform Development: Building apps for iOS and Android using Angular, Ionic, and Capacitor (versions 3-5).
Testing & CI/CD
- Testing Frameworks: Unit testing with Jest, Jasmine, Karma, and Playwright. Running these tests on CI tools like Travis CI and GitHub Actions.
- Workflow Automation: Leveraging Nx’s Reusable Workflows and running GitHub actions locally with act.
Documentation & Collaboration
- Technical Documentation Expertise: Authored in-depth technical documents using platforms like Notion and Confluence, ensuring comprehensive knowledge sharing and team alignment.
Teamwork & Collaboration
- Project Management: Agile Methodologies, SCRUM, Notion, Jira, Confluence.
- Communication: Slack, MS Teams, Pair programming with Live Share using VS Code.
Additional Skills
Game Development
- Game Engines: C++, C#, Unity3D, Unreal Engine 4.
- Other: Python 3, Ren’Py, Xbox One, PSVita, Box2D, SFML graphics, DirectX 11, and Networking with SFML.
Data Science
- Languages & Tools: Python, R, ggplot 2, pandas, NumPy, Gephi.
- Math & Reporting: Statistics, LaTeX.
Professional Accomplishments
asensei
Soft Skills Developed:
- Mentored interns and onboarded new staff members.
- Spearheaded the tool development team.
- Collaborated with the team to elevate:
- Workflow efficiency.
- Code quality, readability, maintainability, performance, security, scalability, testability, reusability, extensibility, modularity, and portability.
- Actively communicated ideas, progress, challenges, and solutions to team members, ensuring feedback was timely, constructive, and delivered in a positive manner.
Technical Accomplishments:
- Developed an Angular/Ionic fitness app with Capacitor for iOS/Android (you can see it in this LinkedIn post), showcasing a custom design for swift exercise retrieval and ASENSEI SDK - (the SDK to capture, correct and coach human movement). Notable features include:
- Implementation of the Figma design within 2 weeks, encompassing app architecture and ASENSEI SDK integration.
- Video, image, and file streaming from Dropbox.
- Served as a foundation for the second iteration of the ASENSEI SDK.
- Acts as a daily-use demo for company employees to build and test content and a testament to potential clients, such as Powerblock (press release here), AMP (press release here) and many more (full list here).
- Engineered a subsequent Angular/Ionic fitness app highlighting the second iteration of the ASENSEI SDK. Angular/Ionic app fitness app which you can see it in these LinkedIn posts: here, here, here, here)
- Crafted a StencilJS web component that melds Three.js graphics, quaternion math, and RxJS, and is automatically shipped as an npm package via semantic release.
- Constructed an Angular/Ionic content-building tool that employs the aforementioned web component. This tool is a daily essential for two full-time employees.
- Innovated a new version of the proprietary markup language and its accompanying content-building tool, built with TypeScript and Node.js. This innovation led to a development time savings of approximately 10 to 12 months to date.
- Designed a VS Code extension enhancing intelli-sense capabilities for the in-house markup language.
- Transitioned projects to an Nx workspace and introduced reusable GitHub workflows. These encompass tasks such as Docker image building for Angular apps, testing, linting, and more. For an in-depth look, see my Medium article: Optimize Your Angular Application Deployment with Multi-Stage Dockerfiles in an Nx Workspace.
- Augmented the team’s productivity through the implementation of tailored bash aliases and functions. Explore some of the git bash aliases and functions I use daily.
Open Source Packages
Developer Extensions
- Created VS Code extension to accompany nand2tetris course published on Visual Studio Marketplace
PRs
Documentation Updates
Docker Images with Private npm Packages
Infinite Scroll Component
- Documentation update for the Infinite Scroll Component.
Typo Fix in globalStyle
Project Improvements
Stencil Example Project (Audio Player)
- Removed build warnings in the Stencil example project - audio-player.
Replace Google+ with Discord
- Replace Google+ with Discord in space-jekyll-template.
Theme Update
Pink Theme for UE4 LazyTheme
- New Pink Theme for Xerios’ UE4 LazyTheme with assets prepared by Justin Meisse.
Unity’s Official .gitignore
Reviewing PRs for Unity’s Official .gitignore
Social Presence
- Medium articles:
- Optimize Your Angular Application Deployment with Multi-Stage Dockerfiles in an Nx Workspace
- Guarding Data Integrity: Immutable Getters vs. Observable Approach for Sorted String and Number Arrays in BehaviorSubjects
- Write git commits with one letter command —
c your commit message
and no double-quotes!
- Answering math questions on Quora:
- Answering and asking questions on StackExchange.
- My profiles on:
Relevant Experience
April 2024-July 2024
Front End Developer at Optimove, Dundee UK
- Developing CRM dashboard in React/Next.js/TypeScript/MobX/React Query
- APIs/AWS Lambda,S3
- Email integrations
- Writing tests in vitest/jest
- Close collaboration with the Backend team
- SCRUM
May 2020-Feb 2024
Software Engineer at asensei, San Francisco, CA | Remote in Dundee, UK
- Communication Facilitation: Act as a bridge for effective team communication, ensuring ideas are conveyed and understood universally across the team.
- App Development: Develop cross-platform applications using Angular and Ionic, specifically tailored for iOS and Android with Capacitor, and leverage AWS S3 for cloud storage.
- Web Development: Develop applications using Angular and StencilJS.
- Custom Web Componens: Craft tailored web components using StencilJS, enhanced with graphics from Three.js and reactive programming via RxJS.
- Tools Development: Construct user-centric tools with rich UI/UX using Angular and create CLI utilities leveraging TypeScript and Commander.js.
- Software Architecture: Lead initiatives to shape software design, architecture, and team workflows.
- Graphics Programming: Delve into graphics projects utilizing Three.js.
- CI/CD Management: Steer our continuous integration and deployment processes with GitHub Actions and Travis CI. Package distribution via npm with semantic-release using Travis CI and GitHub Actions.
- Scripting:
- Enhance daily workflows with git bash/zsh aliases and functions.
- Develop bash scripts to streamline file management tasks.
- Script and automate tasks using TypeScript and JSON, leveraging the Node.js file system.
Sep 2017-Jun 2018
Lead Programmer, Abertay University: Professional Project, Dundee, UK
- Developed mobile game for Junkfish and retro platformer for Timex.
- Utilized Unity with C# for Android (Junk Fish) and Windows (Timex). GitHub Repo
- Managed gameplay programming, prototyping, and source control.
- Led team operations: SCRUM, task assignments, and mentoring.
Education
2019-2020
University of Stirling, Stirling, United Kingdom
- GradCert in Mathematics and Data Science
- Representing and Manipulating Data (Merit):
Around the World in 80 Days by Jules Verne, book analysis with Python - Commercial and Scientific Applications (Merit)
- Statistics for Data Science (Pass):
Statistical Data Analysis of Student Goals - Networks & Graph Theory (Pass):
Barack Obama’s Retweet Network
- Representing and Manipulating Data (Merit):
2015-2018
University of Abertay Dundee, Dundee, United Kingdom
BSc with Merit in Computer Game Applications Development, 2:1
- 3rd year modules (GPA: 2.83):
- Graphics Programming with Shaders (C+)
- Gameplay Mechanics Development (C+)
- Network Systems for Game Development (A)
- Artificial Intelligence (B)
- Professional Team Project: Planning and Prototyping (C+)
- Professional Team Project: Development and Delivery (C+)
- 2nd year modules (GPA: 4.17):
- Data Structures and Algorithms 1 (A)
- Data Structures and Algorithms 2 (A+)
- Graphics Programming (A)
- Game Programming and System Architectures (A)
- Film and Game Genres (A)
- Mathematics for Application Development 2 (A+)
- 1st year modules (GPA: 3.63):
- Computer and Graphics Architectures (A)
- Programming in C++ (A)
- Narrative Theory in Interactive Game Design (C+)
- Mathematics for Applications Development 1 (A+)
- Games for Change (B+)
- Asset Production for Games (B+):
Funding Awarded
2019-2020
The Data Lab scholarship, Stirling, United Kingdom
- Fully funded place in Mathematics and Data Science
- £6500 towards tuition fees
- Professional training with Data Scientists
- Data Lab events
Game Jams
Jan 24-26, 2018
Gameplay Programmer/Design/Team Lead, Serious Game Jam, Dundee, United Kingdom
- Mobile game prototype:
- Aid for lectures and students from the University of St Andrews,
- with preparation and explanation of their practical exercises
- Engine: Unity
- Programming language: C#
- Platform: Android
- GitHub
Nov 8, 2017
Gameplay Programmer/Design/Team Lead, AGDS 4-hour Game Jam, Dundee, United Kingdom
- Brief visual novel with animations, telling a joke
- Made in 4-hours with two artists
- Engine: Ren’Py
- Programming language: Python
- Platform: Windows
- GitHub
Aug 15-17, 2016
Gameplay Programmer/Design/Team Lead, Rainbow Game Jam, Dundee, United Kingdom
- Infinite runner chosen to be made in 48-hours with two other artists and a sound designer
- Engine: Unity
- Programming language: C#
- Platforms: Windows, MAC, Linux
- GitHub
Jan 29-31, 2016
Gameplay Programmer, Global Game Jam 2016, Dundee, United Kingdom
- Easy pick-up game. My first Unity project and first game jam
- Engine: Unity
- Programming language: C#
- Platforms: Windows, MAC, Linux
Societies
Sep 2015-Jul 2018
Member of Abertay Game Development Society, Dundee, United Kingdom
Volunteer Experience
Sep 2017-Aug 2018
Built and managed St Andrew’s RC Cathedral website, Dundee, United Kingdom
Sep 2015-Apr 2016
1st Year Class Representative at Abertay University, Dundee, United Kingdom
- Listening to student feedback and liaising with lectures
- Attended training about leadership and teamwork