Junaid F. RoR/Elixir Engineer
Summary
- Programmer for the past 8 years in NodeJS, Elixir, and Ruby
- Upper Intermediate English.
- Available ASAP.
Experience
Senior Fullstack Engineer, Nectarine Credit– Canada(Remote)
September 2022 - Present
Description: Nectarine Credit lets small and medium-sized companies manage their customer credit applications all in one easy-to-use system. Get bank and vendor updates on your customers sent automatically to you. Digital credit applications and systems like Nectarine Credit will save you time and money and are more secure than paper applications.
Responsibilities:
- Maintain API, written in Elixir Phoenix and Absinthe GraphQL.
- Develop features with Front End, written in React Apollo GraphQL and coupled with Phoenix API.
- Bug Fixes, and maintain code quality along with test suites.
Senior Elixir Engineer, Safeboda– Uganda(Remote) Fintech Elixir Team
June 2022 - August 2022 3 Months
Description: SafeBoda is Africa’s Super App - the 2-wheeler ride-hailing market leader and has a growing consumer platform that is revolutionizing transportation, payments, fin services, and on demand services in Africa’s cities. Based in Uganda & Nigeria, we are a venture-funded company that is already having a huge impact on millions in our markets.
Responsibilities:
- Designed and developed the company's e-wallet solution integrated with the payments processor.
- Integrated payment drivers with payment gateways i.e Interswitch && Flexipay.
- Prepared a solution based on RMQ Publisher using RabbitMQ with Topic exchange binding multiple queues, and Using Broadway Consumers to handle queues and events.
- Due to the money crisis, Company had to lay off many employees, Unfortunately, I was one of them, so For reference, Please contact `scottnoel@safeboda.com` Scott Noel CTO of Safeboda.
Lead Elixir Engineer, Evercam– Ireland (Islamabad Office)
December 2015-June 2022 7 Years
Description: Evercam is a Dublin-based, CCTV Construction Camera company, dealing in HikVision and Axis Cameras. I started as Ruby Engineer but was promoted to first Elixir Engineer and then Lead Elixir Engineer in my 7-year period at Evercam.
Responsibilities:
- Maintained Ruby on Rails admin and dashboard applications with Rspec & Capybara.
- Maintained and worked on building features in Dashboard and Admin application written in Ruby On Rails.
- Maintained and build features in Ruby Sinatra API.
- Did a re-write of Ruby Sinatra API to Elixir Phonix API with GraphQL & Swagger Docs and Unit tests.
- Made a huge architectural change from Monolithic to Microservices architecture, Separating Business and Camera Logic.
- Migrated Ruby On Rails application to NuxtJS (VueJS) and Connected them with Phoenix API.
- Created a Ruby on Rails application for Computer Vision, Eyes of Things.
- Built an outstanding tool, called Snapshot Extractor, using RabbitMQ fan out topology in Elixir using Oban, GenServer, RMQ Publisher, and BroadwayRabbitMQ.
- Set up RAID & Nagios, for physical server monitoring on Hetzner Servers.
- Set up and maintain Seaweedfs clusters for uploading Camera Snapshots.
- Built a tool to accept Kafka message streams using BroadwayKafka with decrypting messages using Protobuf in Elixir.
- Implemented Hot code Upgrades using Distillery in Elixir and Ansible.
- Developed and Maintained microservice in Elixir to handle 1000+ camera workers using RabbitMQ with Producer Consumer logic and DynamicSupervisor with a one-to-one strategy.
- Built a tool to generate Maps using geoJSON and Coffeescript deployed on Heroku.
- Built and maintained Node API with React and Apollo GraphQL using MongoDB.
- Maintained services on AWS elastic beanstalk, Amplify, EC2, S3, Route53, and Lambda.
- Worked with PostgreSQL, Firebase, and MongoDB.
- Implemented Redis cache to Elixir/Phoenix API to read data from the Redis server.
- Built and maintained Phoenix API, and NuxtJS application connection for live streaming JPEGs using Sockets and Phoenix PubSub, also coupled API and Microservices using ERPC erlang calls.
- Created and Maintained Device management & Monitoring Application using Elixir and Phoenix
Development Executive (Javascript Engineer), Highrise Technologies– Saudi Arabia (Islamabad Office)
August 2014-August 2015 1 Year
Description: Highrise was an IBM Bussiness Partner company, Working on IBM tools IBM Security Access Manager For Web, IBM Security Identity Manager, and IBM Security Access Manager for Single Sign-On, I served for a year in Highrise as Javascript Engineer.
Responsibilities:
- Developed and maintained a ticketing system that had 3 stages of development over a year
Stage 1: it was built on top of PM2 with NodeJS Cluster.
Stage 2: NodeJS Cluster using RabbitMQ
Stage 3: NodejS Cluster with Redis Cache && Nginx Reverse proxy.
Web Developer (NodeJS), Websol Technologies (Faisalabad Office)
January 2012-August 2014 2 Years
Description: I worked as a freelancer with Websol technologies, served as a NodeJS developer mainly but also developed a few PSD to HTML websites as well.
Responsibilities:
- Developing and maintaining NodeJS, and ExpressJS API using Mongoose.
- Worked in BackboneJS, Webpack, ES6, and Handlebars.
Freelance Work in Elixir
For a small period, I also worked with Turing to integrate Meddy with Helium Health using Elixir,
Provided API from Helium Health in Phoenix.