Scroll To View More
Farhad Kazemi

Farhad Kazemi

Melbourne, Victoria, Australia
Member since March 11, 2014
Farhad is a senior software developer with extensive knowledge of object-oriented programming, design patterns, and design best practices. He has a strong understanding of Java and UI technologies and loves bringing fresh concepts to projects. He boasts effective and efficient problem solving skills.
Farhad is now available for hire
  • Australia Post
    Java 8, Spring, Apache Camel, AngularJS, AWS, Docker, Python, Hibernate/JPA
  • MessageMedia
    Java, Amazon Web Services (AWS), Docker
  • Genapsys
    Java, Spring, Storm, Git, Jenkins
  • Java, 8 years
  • Spring, 4 years
  • HTML5, 4 years
  • CSS3, 4 years
  • Git, 4 years
  • SQL-99, 3 years
  • Python, 2 years
  • AngularJS, 2 years
Melbourne, Victoria, Australia
Preferred Environment
Linux, Git, Java, Spring, Hibernate, AngularJS
The most amazing...
...thing I've architected is a high-performance electronic fund transfer switch capable of processing 1800 transactions per second for a large bank.
  • Senior Java Developer
    Australia Post
    2015 - 2017
    • Implemented a public REST API.
    • Developed Australia Post's web application and unit tested UI components.
    • Developed a Command Line utility to help the team save time.
    • Designed and implemented a CI pipeline.
    • Integrating legacy internal systems with a Rest API.
    • Worked with many AWS components and deployed the application to EC2 instances.
    Technologies: Java 8, Spring, Apache Camel, AngularJS, AWS, Docker, Python, Hibernate/JPA
  • Senior Java Developer
    2014 - 2015
    • Integrated Spring Cache and Ehcache with the application to add an extra in-memory cache layer between the application and Redis.
    • Developed a distributed system using RabbitMQ as the messaging backbone.
    • Designed a balanced publisher to Amazon SQS.
    • Developed a message transmitter component based on SMPP communication protocol and integrated with various providers such as Telstra and Optus.
    • Designed and implemented an efficient message consumer (semi-lock free to be called by multiple threads).
    Technologies: Java, Amazon Web Services (AWS), Docker
  • Senior Java Developer
    2014 - 2014
    • Designed and implemented the CI pipeline of the company using Docker and Jenkins.
    • Set up the network file system and configured embedded Linux to copy files to NFS in an optimized way.
    • Refactored the application to use Spring.
    • Added New Relic to publish measurements.
    • Set up a data processing pipeline using Twitter Storm and integrated it with MATLAB.
    Technologies: Java, Spring, Storm, Git, Jenkins
  • Senior Java Developer
    SAMAT (financial banking)
    2012 - 2013
    • Architected an innovative in-memory electronic fund transfer switch capable of processing 1800 transactions per second with the following characteristics: Failover clustering, horizontal scalability, low latency, and high throughput.
    • Designed and implemented the full stack of a web-based monitoring application.
    • Designed and implemented secure RESTful web services and integrated them with an AJAX-based client written with JavaScript and AngularJS.
    • Designed an advanced CI pipeline to build, test, and deploy an application on VMware ESX using Puppet.
    • Developed effective unit, integration, and functional tests.
    • Integrated an ElasticSearch server with the application to index incoming transactions data at run time.
    • Set up a HAProxy to load balance EFTPOS TCP connections between distributed computing nodes.
    Technologies: Java, Spring, Hibernate, REST, AngularJS, Netty, ElasticSearch
  • Senior Java Developer
    2012 - 2012
    • Worked in a deadline-driven environment with an Agile team to develop a CRM solution based on the Activiti business process engine.
    • Designed an effective model-driven architecture which helped reduce development costs by generating UI components from the data model at run time.
    • Designed an application stack using Spring Core, Spring AOP, Vaadin, and JPA2/Hibernate, as well as configured a data access layer to communicate with the Oracle 11g database.
    • Helped the analysis team to model their business processes based on BPMN 2.
    • Set up a CI pipeline using TeamCity and Nexus to run the project's unit tests, build artifacts, and finally deploy on testing servers for testing by the QA team.
    Technologies: Java, Spring, Vaadin, Activiti BPM, JPA/HIbernate
  • Senior Java Developer
    Khobreh Pardaz
    2011 - 2012
    • Implemented robust tamper-proof RESTful web services for a high traffic social website.
    • Provided management with a list of social features to engage users more extensively.
    • Worked closely with the UI team to fix communication issues between the jQuery AJAX-based client and Java back-end server.
    • Developed optimized algorithms to calculate customers' scores based on various loyalty programs.
    • Fixed several applications' memory and performance issues by profiling with JProfiler.
    • Profiled and optimized SQL queries using the Query Analyzer of MS SQL Server 2008.
    • Set up and configured Jenkins to build and run unit (JUnit) and functional (Selenium) tests.
    • Set up and integrated a JasperReports Server with MS SQL Server and developed customized reports using a JasperReports Library.
    Technologies: Java, Spring, Hibernate, JSP, jQuery, Tomcat, MS SQL 2008
  • Java Developer
    2008 - 2011
    • Worked in a distributed Agile team to develop a social web application capable of handling a high number of user requests.
    • Provided management with a list of cloud opportunities in order to address scalability and performance issues.
    • Migrated a part of the internally hosted application to Amazon EC2 and integrated it with Amazon S3 to store user assets.
    • Moved the main part of the application to Google App Engine, and refactored DAOs to be compatible with GAE.
    • Developed JSON-based RESTful web services using Spring MVC, Jackson, JSP, and Apache Tiles, and integrated it with an AJAX-based client written in JavaScript and jQuery.
    • Modified and recompiled the source code of Spring Security to be compatible with a GAE environment.
    • Migrated the project’s build scripts from Ant to Maven.
    Technologies: Java, Google App Engine, AWS, jQuery
  • .NET Developer
    2007 - 2008
    • Designed and implemented an interactive task scheduling panel in C# to be used in the reporting panel of a SCADA system.
    • Designed an optimized task scheduling algorithm considering dependencies and other constraints to reschedule tasks on new changes.
  • Languages
    HTML5, CSS3, Java, PHP, JavaScript, Python, C#, SQL-99, C++, C
  • Frameworks
    Spring, Hibernate, JPA, Mockito, Vaadin, Storm, Ext JS, Apache CXF, Activiti BPM, AngularJS, Netty, jPOS, Bootstrap, Jasmine
  • Libraries/APIs
    JDBC, JSTL, jQuery Mobile, jQuery UI, RESTEasy, Underscore.js, jQuery, Backbone.js, JMS, SLF4J, Jackson, Java Servlets, JavaMail, Java Collections, Node.js, JasperReports, Puppet.js, DBUnit, JGroups, AngularUI
  • Tools
    IntelliJ IDEA, Git, YouTrack, Ant, Maven, Subversion (SVN), JIRA, Apache Solr, Flash, Shell, Sonar, Cobertura, Mercurial, Bamboo, Jenkins, Google Docs, TeamCity
  • Paradigms
    Domain-driven Design, SOA, Object-oriented Design (OOD), Dependency Injection, Unit Testing, Design Patterns, Test-driven Development (TDD), Continuous Deployment, Inversion of control, Event Sourcing, Model View Controller (MVC), Continuous Integration (CI), Object-oriented Programming (OOP), Parallel & Distributed Computing, REST, Load Testing, DevOps, Concurrent Programming, Automated Server Deployment, Test Automation, Data-driven Programming, UX Design, Responsive Web Design (RWD), Aspect-oriented Programming, Agile Software Development, Cross-platform, Pair programming, Real-time systems, Scalable Application, Service-oriented Architecture (SOA), Behavior-driven Development (BDD), Model driven development, Asynchronous Programming, Scrum
  • Platforms
    Linux, Java EE, JVM, Google App Engine, AppEngine, Windows, Amazon Web Services (AWS), iOS, JSE, LAMP, CUDA, Android, Red Hat Linux, Oracle Database, AWS EC2, Firefox, XAMPP, Nexus, Oracle, Ubuntu, Unix, J2SE
  • Storage
    JSON, MySQL, AWS S3, Database Modeling, Cache, Database Performance, Microsoft SQL Server, HSQL, Data Integration, HDFS, Apache Derby, Google Cloud Datastore, H2, Berkeley DB, PostgreSQL, Riak
  • Misc
    User Interface (UI), Multithreading, AJAX, Web App Development, Elasticsearch, log4j, EJB 3, Network Programming, SOAP, User Experience (UX), Single-page Applications (SPA), UI Testing
  • Certificate in Machine Learning
    Coursera | Stanford University - Online
    2016 - 2017
  • Bachelor's degree in Computer Engineering
    University of Tehran - Tehran
    2006 - 2010
I really like this profile
Share it with others