I am a passionate software developer who loves programming, especially in the Ruby language. Over the past 5 years, my main focus has been working with Ruby on Rails and it's technology framework. During this time, I have worked hard to gain an in-depth knowledge. Most of my experience has been working as a key member with a number of Ruby development teams. I especially enjoy this type of collaboration and pushing of my skill base to ensure the team delivers top quality products, output and hits delivery time frames.
During my spare time, I am an active member in the Ruby meet up community and join hackathons and code camps outside of work. I enjoy the social aspect of this area of my life, but this also helps to constantly keep my skills at the forefront of development. I consider myself a proactive developer and enjoy suggesting strategies or new technologies within my team to boost the development of the project, at the same time applying the suggested best practice as of the current trends, for example, TDD, Agile, Git Flow, Devops, scrum, pair programming, open source and collaboration.
Recently I have just finished teaching myself Elixir/Phoenix and have successfully built my first app.
I previously used Redmine for task management for 6 months for a previous short term project that I worked on last 2014. I have a wide experience on using Trello and JIRA for task management.
Throughout my career, I have learned how the software development life cycle works from planning through to implementation, testing and deployment, alongside supporting the products adding new features and the bug fixing phases. Software development is my passion and I am keen to learn new technologies and strategies to continue to grow my knowledge and career.
Work Experience
Software Developer
March 2016 - Present
Responsibilities:
Responsible for developing new features, bug fixes, maintaining the project and providing improvements.
Handled some of the heavy tasks in the project like the automation of imports of bulk users with dynamic attributes (if the attribute doesn’t exist it will automatically added to the user’s attributes) with error handling and re-import functionality for fail records import.
Automation of bulk user update of records, this feature is in charge on updating user details from excel files from client and they can specify from the file which attribute to update only and if the attribute doesn’t exist it will just add up to the user attributes.
Work on most of background process features, like reassigning user access to the content base from specific criteria specified in the admin panel, background process on sending event surveys on specified time to be blast base on the evaluated criteria from the admin panel, and many other background process features.
Refactor some code base to be centralized and reusable from other areas of the app.
Building new community for the client, Build and customize the community from how it looks, to specific functionality requests to be included into that community.
Deploying urgent bug fixes depending on the client or the product owner requirements.
Participating on planning and time estimates for new features, improvements and some dev works needed to work on in the next sprint.
Suggesting some improvements on the dev process like doing agile, scrum, sprint, following gitflow and applying best practice to the project
Company:
The business was built around on of the largest UK research companies, the app was used to gather feedback from the community through surveys and polls. All customer rewards and payments were also focused through their app.