Osman Ozdemir

Software Engineer
  • (917)-916-3658
  • oozdemir2704@gmail.com
Senior Frontend/Full Stack Engineer with 8+ years of experience and a solid computer science background. I enjoy building fast, reliable and scalable web applications that are built with bleeding edge technology, using appropriate design patterns and best practices. I am a big fan of Robert C. Martin and his software development and agile methodologies. Although started out as a frontend engineer, I have a good understanding of web development overall, and can easily juggle both ends of the stack.

Experience

2020/08 - Present

Frontend Engineer II

2020/08 - Present
Amazon Web Services, New York, NY
  • Started as Frontend Engineer II on the Customer Profiles team which was creating a brand new product.
  • Worked on the launch of Customer Profiles product and implemented the UI using Typescript/React withing 3 months, right on time for Re-Invent 2020.
  • Worked on transferring the entire client side codebase to a better stack, complete with its own pipelines, integrations tests and canary tests.
  • Created pipelines and underlying AWS constructs (S3 Buckets, ECS Fargate instances, DynamoDB Tables), making extensive use of AWS CDK.
  • Created a shared component with its own npm package and pipeline that would be used by multiple AWS consoles
  • Extended Customer Profiles product with new features, added the ability to connect to streaming APIs using EventBridge
  • Mentored new hires, and even experienced teammates on FE best practices, and CDK.
  • Wrote extensive unit tests with Jest and React Testing Library, integration tests with Cypress, and canary tests with Puppeteer.
  • Interviewed over 20 possible candidates, and hired 2 very good front end engineers
2019/12 - 2020/08

Frontend Engineer

2019/12 - 2020/08
Enigma Technologies, New York, NY
  • Started and operated as the only Frontend Engineer of the company throughout my tenure.
  • Converted fully client-side application/website (enigma.com) to a server side rendered application.
  • Closely worked with design and product teams to create a number of React components.
  • Created a visual demonstration of the Enigma Small Business API.
  • Set up Cypress test suite and wrote tests that covered the entire FE application.
  • Came up with the SEO strategy that would get over 15 million pages crawled and cached by search engines.
  • Interviewed possible Frontend engineering candidates.
2018/10 - 2019/12

Senior Software Engineer

2018/10 - 2019/12
Compass, New York, NY
  • Converted AngularJS components to React components and hooked them up to an AngularJS codebase piece by piece.
  • Created new features (UI Components) using AngularJS and ReactJS.
  • Coded functional tests using Cypress which significantly reduced the bugs that make it to production.
  • Imlemented unit tests for certain API endpoints using Golang, increased coverage from 0 to 70%.
  • After successfully predicting user behavior, I started to get involved with the design stage of the UI components, collaborating with our designers, helping them with creating an easy UX flow that the average user can interact with without thinking too hard.
  • Mentored new hires.
2017/09 - 2018/10

Senior Software Engineer

2017/09 - 2018/10
Shopspring, New York, NY
  • Within my first week of employment, I setup my local environment and updated engineering onboarding wiki which was out of date. By the first weekend, I had already started pushing code to production, fixing bugs related to frontend.
  • Identified the major hiccups in development workflow, proposed solutions for linting, testing, and continuous integration.
  • Implemented Prettier as a linting solution, added commit hooks that runs only on the changed files which reduced the time it takes to lint and commit code for any Javascript related work by a margin of 15-20%.
  • Implemented integrations for analytics and ab testing libraries Optimizely-x, Amplitude, and Segment. This involved work on both our Javascript codebase for frontend and Python - Golang codebase for backend.
  • Implemented a personalization solution for customers to save their measurements and refined our search queries to return only the sizes the customer is looking for as a default.
  • Made proposals for renewing our frontend stack. Switching from a React - Flux/Redux setup to a React - GraphQL solution.
  • Switched the unit testing technology used for Javascript from Mocha/Chai to Jest. Added pre-commit hooks to make sure added code meets the standarts for test coverage.
  • Improved the page load performance by a margin of 40% by implementing optimizations for images, ES6 dynamic imports coupled with webpack code-splitting at component level. Also reduced the javascript compilation and execution overhead by using Web Workers to run Redux state changes and React tree diffing algorithms in a parrallel fashion.
2015/09 - 2017/09

Software Engineer

2015/09 - 2017/09
Lifion by ADP, New York, NY
  • Worked on breaking down and migrating a large monolith codebase into micro services.
  • Designed and implemented an attribute based access control system that complies with XACML specification.
  • Took initiative to solve the problem of integration testing between microservices. Created a visual interface for defining chained async operations and a test runner to parse and execute tests in given order.
  • Created a Docker image that allowed all teams working with ui to run containerized selenium javascript tests on headless browsers. This way we were able to make selenium tests a part of our Jenkins builds.
  • Designed and coded an intuitive user interface for defining traversals over a graph database using React-Redux and plain SVG.
  • Created the frontend component for authentication service which involved bootstrapping the boilerplate for a React-Redux application and coding React components for login, sign up, forgot username/password etc features.
2014/12 - 2015/09

UX Engineer

2014/12 - 2015/09
InRhthym, New York, NY
  • Amplify Education (Client)
    • Worked on reporting-statistics tool measuring and comparing student academic success and college readiness that’s currently being used by all school districts across 13 PARC Consortium states.
    • Implemented interactive React components that was responsible for visualizing student data in graphs and charts as well as a grid structure.
    • Proposed Karma-Jasmine-Istanbul setup for Javascript unit testing as there was nothing being done. Hooked up these technologies into our codebase and iteratively improved unit test coverage up to 90%.
  • Motor Information Systems (Client)
    • Identified and fixed frontend related bugs for a .NET – Marionette web application at the last stages of the project. Closed over 500 tickets over 2 months.
    • Updated Marionette, made necessary changes to conform to the new version. Refactored or cleaned up a lot of legacy code.
  • InRhythm Labs
    • Created a MEAN stack boilerplate that can be used later on other projects.
    • Implemented a web application that was used within the company to track tasks, and task management in order to identify wasted resources.
    • Mentored new hires in best practices.
2012/07 - 2014/12

Full Stack Web Developer

2012/07 - 2014/12
Buncee, Calverton, NY
  • Started work as the engineer no 2. Although hired as a frontend engineer, I eventually started operating at a full stack capacity.
  • Cleaned up legacy code and refactored it to follow a proper MVC pattern.
  • Implmented a fast and responsive ui for an interactive rich presentation design tool.
  • Set up a load balancer for Apache server.
  • Wrote stored procedures, designed tables and relations in SQL, normalized the database. Got rid of security risks of SQL injection.
  • Conducted technical interviews and mentored new hires.

Education

2009/08 - 2012/05

Stony Brook University

2009/08 - 2012/05
Computer Science (B.S.)
    2007/01 - 2009/05

    Nassau Community College

    2007/01 - 2009/05
    Computer Science

      Skillset

      Programming Languages
      Programming Languages
      • Javascript

        Expert

      • Typescript

        Expert

      • Java

        Advanced

      • Python

        Advanced

      • C++

        Intermediate

      • Rust

        Intermediate

      FE Frameworks
      FE Frameworks
      • React

        Expert

      • Redux

        Expert

      • Vue

        Advanced

      • Angular

        Advanced

      Testing
      Testing
      • Cypress

        Expert

      • Puppeteer

        Expert

      • Jest

        Expert

      • Testing Library

        Expert

      • Enzyme

        Advanced

      • Mocha

        Advanced

      • Chai

        Advanced

      Styling
      Styling
      • CSS3

        Expert

      • Emotion

        Expert

      • SASS

        Advanced

      • Styled-Components

        Advanced

      Databases
      Databases
      • PostgreSQL

        Advanced

      • MySQL

        Advanced

      • MongoDB

        Advanced

      • Couchbase

        Intermediate

      Operating Systems
      Operating Systems
      • Linux

        Expert

      • Windows

        Advanced

      • Mac OSX

        Advanced

      Version Control
      Version Control
      • Git

        Expert

      • SVN

        Advanced

      Other
      Other
      • Webpack

        Advanced

      • AWS CDK

        Advanced

      • Gulp

        Advanced

      • Grunt

        Advanced

      • Docker

        Advanced

      • Jenkins

        Intermediate