Senior Ruby Engineer
2018 - 2020ClickFunnels- Maintained a large online marketing application with over 50,000 subscribing customers.
- Moved from using Rails controllers to build a more scalable/isolated RESTful API using Grape and Sidekiq. While this allowed the application to be more scalable, we spent time on reliability by adding many integration/unit tests for the new API.
- Used best practices to create a clean, well-documented code.
- Refactored the codebase and scaled the API by using a lot of PORO/abstractions and moved from relying on MVC to microservices.
- Reviewed code, managed issues, and ensured the provision of high code quality.
- Implemented new features, and participated in business decisions like prioritization of tasks and estimates for new features, and improved overall development process.
Technologies: CircleCI, Heroku, Memcached, Redis, MySQL, Trailblazer, JavaScript, RSpec, Ruby on Rails (RoR), RubyTechnical Team Lead (MENA)
2016 - 2018Cookpad- Managed a team of developers, monitored performance, and ensured the consistent achievement of project targets/deliverables.
- Planned the workflow, assessed priorities, allocated timescales, and distributed work per level of expertise required.
- Utilized Ruby as well as Rails to develop user-facing features.
- Reviewed code, managed issues, and ensured the provision of high code quality.
- Managed update/code development project phases and ensured that documentation maximized usability, scalability, performance, and quality.
Technologies: RSpec, React, JavaScript, Ruby on Rails (RoR), RubyFull-stack Ruby on Rails Engineer
2014 - 2015Perchwell- Added new functionalities for the site.
- Moved from jQuery to use Backbone.js for the front end.
- Created tests for the project.
- Enhanced the performance of the site by creating a separate API to communicate with the front end using JSON.
Technologies: Amazon Web Services (AWS), Ansible, PostgreSQL, Backbone.js, Ruby on Rails (RoR), AWS, Elasticsearch, RubySenior Ruby/Rails Developer
2014 - 2014Dubber, Pty., Ltd. (via Toptal)- Added new functionalities using Ruby on Rails.
- Created tests using RSpec and Capybara.
- Created UI components using HTML/CSS/CoffeeScript.
- Created new functionalities for the telephony system using WebRTC.
Technologies: WebRTC, CoffeeScript, CSS, HTML, Capybara, RSpec, Ruby on Rails (RoR), RubyRuby Developer
2014 - 2014Clearlogin, Inc. (via Toptal)- Created a scalable/fast log management system using a separate MongoDB and migrating the old data from MySQL.
Technologies: MongoDB, Ruby on Rails (RoR), RubySoftware Engineer, Account Manager
2009 - 2014Cubiic- Managed a small team to deliver a native mobile application and SMS-based solution. Handed the development, deployment, design, and architecture of the software for mobile operators and integrated the solution with the back-end and billing system of the mobile operator.
- Created a SMS-based chat application to chat with Facebook, MSN, GTalk, and Yahoo accounts using simple SMSs. Used the C++ and Qt framework to develop the application for performance issues and used Amazon cloud servers to scale. Developed this application for the Nedjma mobile operator http://www.wataniya-algerie.com/extranet/web/serviceparticulier/nedjma-net.
- Created a native iPhone and Blackberry chat application for Nedjma and integrated it with Nedjma’s billing system. Allowed the user to pay a monthly subscription, talk, and send unlimited photos and voice messages to friends. http://www.wataniya-algerie.com/extranet/web/serviceparticulier/nedjma-net.
- Created an iPhone application using Objective-C for Ramadan. Used Ruby and EC2 server for the back-end (http://itunes.apple.com/lb/app/live-ramadan/id385779970?mt=8).
- Built a WAP portal for Nedjma using WML for old devices, WAP 2.0, and XHTMLMP for smart phones (http://wap.nedjma.dz).
Technologies: XHTML, Wireless Application Protocol (WAP), WML, Objective-C, Qt, C++Project Manager, Software Engineer
2008 - 2009NAHARNET- Managed a small team of four Rails developers, one web designer, and one graphic designer. Used Scrum as a project management methodology and Basecamp to manage and track projects.
- Developed, deployed, and maintained the www.tahawor.com site.
- Developed, deployed, and maintained the www.naharna.com site based on Web 3.0 and semantic (RDF) technology.
- Developed, deployed, and maintained the http://elections.naharnet.com site.
- Applied TDD/BDD approaches to software development.
Technologies: Basecamp, Ruby on Rails (RoR)Software Engineer
2007 - 2008TootCorp- Handled development of the company sites (www.ikbis.com, www.watwet.com, and www.itoot.net) and added new features for them using the Rails framework as a primary web development framework language. Was also responsible for managing all the information technology needs of TootCorp network, including sites administration and other security issues.
- Created a Facebook application for the WatWet site using the rFacebook library (http://apps.facebook.com/watwets/).
- Modified both www.ikbis.com and www.watwet.com sites to Web 2.0 technology and Ajax.
- Developed several Ruby on Rails applications for internal and external uses.
- Developed a set of standards‐compliant SEO-friendly templates and widgets for our site. Developed several plugins for internal use. Managed and administered sites using EC2 cloud servers.
Technologies: Amazon EC2, Facebook, Ruby on Rails (RoR), AjaxWeb Developer
2005 - 2007Jeeran- Worked as a web developer on Jeeran, the biggest Arab social network and blogging site with more than 1 million active members. Used Microsoft technology (.NET, C#, Micosoft SQL server, etc.). Implemented numerous changes regarding the look and feel of the site (GUI) and tried to make it based on Web 2.0 technologies. Made the first Arabic Facebook application.
- Created the first Arabic Facebook application for the Jeeran site (JeeranBlogger) using.NET framework, FBML, FBJS, and other technologies. Allowed users to quickly and easily integrate existing blogs into their Facebook profiles, getting more exposure for their blogs and sharing content with friends (http://apps.facebook.com/jeeranblogappdemo/).
Technologies: GUI, C#, Microsoft SQL Server, .NET