Zurich, Zurich, Switzerland
As a software engineer my main field of expertise is in web development with a focus on Javascript. My responsibilities on the various position vary between developer, team lead, analyst - architect. As an analyst / architect I have helped define project requirements, understand dependencies with integrating parties and then finally propose solutions in a standardised way. My most enjoyable task is to work on design and implement complex architectures. As a team leader I have helped define and plan tasks with a focus on maximising deliverability. I always try to help team members to be able and happy to do their work. As a developer I have worked on implementing web applications from scratch by researching technologies and setting up conventions and best practises. I have worked on existing projects by ways of implementing new features or by refactoring / optimising existing codebases or processes. I have a holistic view of the stack and am able to handle programming tasks from front-end to back end as well as in infrastructure. I really enjoy using the latest web technologies and methodologies and I always welcome the opportunity to learn something new. On any role I always try to maximise knowledge transference bidirectionally by ways of presentations, PRs, pair programming as well as one on one sessions. During my career I witnessed first-hand how utilizing and implementing standards, patterns and best practices can affect productivity and quality of work. Trying to tame a new project, with all its unknown implementation details, finally succeeding and then watching the moving parts work together, is what makes the clock tick for me. My technologic todo list includes exploring reactive programming, creating a truly universal project with React and React Native and of course getting involved in blockchain technologies.
As a team lead I was leading a team of 10 people on a journey to deliver a new feature set that included complete integration with a 3rd party data provider as well as new features on top of our existing platform in a significantly volatile environment while striving for speedy deliverability. My responsibilities on that position were to analyse, specify and plan the features that we wanted to implement. It was a mix of roles between Business Analyst, Architect and Scrum Master. I was responsible for specifying and planning the tasks and helping the team move as fast as possible by removing blockers, maximising communications. As a Web guild lead, I was responsible with having the oversight of all the web related projects. Related tasks included: - Keeping projects maintainable, up to date and with concise styles and methodologies. - Created generic project generator as well as reusable components library. - Setting up internal tools and infrastructure mechanism required to provide features to our web platform.
My responsibilities in this position were to help in everything JavaScript. - Created and maintained various microservices using a proprietary framework build on top of node.js. - Designed and implemented a React SPA built on top of GraphQL (through the Apollo client) that provided a management endpoint for clients. Designed and implemented it's accompanying backend using aforementioned node.js framework in conjunction with the Apollo GraphQL server solution. Tehcnologies: node.js, hapi.js, docker, react, redux, sagas, graphql - Apollo (client and server)
On this role, i was on the main product's team. The product was build with backbone.js and Marionette. Subsequent versions used the aforementioned technologies and were gradually migrated to use browserify, babel and finally to React/Flux/Redux. My responsibilities were to the support the existing codebase and to design/implement all new features to come. I helped with the migrations to browserify and babel, and i implemented the React/Redux features. I also helped with the testing workflow by making some significant performance enhancements and automations. I took part in the creation of the e2e testing suite for the mobile version of the app, and to bootstrap the React/Redux testing setup. Technologies: ES6/ES7, React, Redux, Immutable.js, backbone.js, Marionette, Ruby on Rails, SCSS, babel.js, browserify, gulp, teaspoon, enzyme, intern.js
Some of the projects i undertook as a freelance engineer are: - Rewrote the mobile application of a startup using Framework7 and Marionette (iOS and Andoid) - Created responsive web-sites using Laravel PHP MVC - Created an e-book reader Phonegap application - Created a custom ERP solution using PHP - Project tracking web-service using Ruby On Rails - Chrome extension to provide sensible cinema filtering using ember.js Technologies: Phonegap, cordova, Framework7, backbone.js, Marionette, Laravel, PHP, Ruby On Rails, HTML, CSS3, Javascript, ember.js, jQuery, pjax, Chrome Web APIs