Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Curriculum Vitae – Morné Fourie – Senior ASP.Net and Java EE Developer 60 Killarney Street Oakdale Bellville 7530 072 336 4924 [email protected] 30 August 2016 Dear Sir / Madam Thank you for the opportunity to submit my CV. I started programming at the age of 14, and won a national award in the same year. Today I am a senior ASP.Net and Java EE Developer and with strong experience in the Microsoft and Java technology stacks. I manage the full software development lifecycle (SDLC): Gathering business requirements Drawing up / grooming specification documents Sprint planning and review (Agile methodology) Implementation / Programming Automated builds, Unit testing and Integration testing Deployments to development, UAT and production environments Monitoring and bug reporting For Microsoft based solutions, I follow best practice coding standards in the form of the .NET Framework Design Guidelines as documented on MSDN. Any developer who is familiar with the .NET framework itself, will be comfortable with the code conventions in the delivered codebase. I focus on developing robust software by adhering to the SOLID principles: Single Responsibility Principle Open / Closed Principle Liskov Substitution Principle Interface Segregation Principle Dependency Inversion Principle I use the most common Design Patterns to make code more readable and maintainable. I use the best available refactoring and code quality tools, and have a professional and systematic approach to everything I do. I'm a freelance developer. Let's set up a meeting. I know I can help you. Respectfully yours, Morné Fourie “If you think hiring a professional is expensive, wait ‘til you see what an amateur costs you” 1 Curriculum Vitae – Morné Fourie – Senior ASP.Net and Java EE Developer Personal Information Full name: Date of birth: Nationality: Languages: Telephone: E-mail: Website: Morné Fourie 24 January 1974 South African English (Good) Afrikaans (Dis my taal) French (Un petit peu) 072 336 4924 (cell) [email protected] www.webtopia.co.za Frameworks and Technologies C# / ASP.Net • • • • • • • • • Java Entity Framework / Dapper ASP.net Web Forms ASP.net MVC Framework StructureMap IoC Container NUnit / xUnit / MS Test Log4Net and many more WCF / SOAP / REST Web API / NancyFX Active Directory Integration • • • • • • • • • • UI Spring MVC Spring IoC Container SOAP / REST Web Services JSP JPA / Hibernate JUnit Log4J Vaadin Grails LDAP / Active Directory • • • • • • AngularJS HTML5 CSS3 Javascript JQuery Bootstrap Responsive Design Tools Source control • • Git / Subversion servers Sourcetree Test tools • Selenium Monitoring • PRTG Network Monitor Continuous Integration (CI) / Build environment • Project Management / Agile Jenkins / Hudson server (both • • Java and .NET builds) • Jira Agile (Scrum) Jira Capture (Bug reporting) Confluence (Wiki) • • Maven / NuGet Sonatype Nexus server • • • • • • • • • • • • Visual Studio Professional 2015 + ReSharper Intelli-J IDEA NetBeans Eclipse SQL Server Management Studio (SSMS) SQL Server Integration Services (SSIS) SQL Server Reporting Services (SSRS) DataGrip MySQL Workbench Pervasive Control Center (Pastel Partner database) MS Access Stimulsoft Reports Designer (Java and .NET) IDE “If you think hiring a professional is expensive, wait ‘til you see what an amateur costs you” 2 Curriculum Vitae – Morné Fourie – Senior ASP.Net and Java EE Developer Technical skills SQL • • • • • • • • • • • • .NET Database design Very proficient in T-SQL Migration scripts for upgrades Views Stored Procedures Functions Replication ETL (Extract Transform Load) Setup and monitor SQL jobs Design and maintain reports Scheduled backups (onsite and offsite) Optimisation / Indexing Java • • • • • • • • • • • • EF6 Database First Design Linq ro SQL Web Services (serve and consume WCF, SOAP, REST, JSON, XML) • • • • • • • ASP.net Web Forms / HTML5 / CSS3 / JQuery ASP.Net MVC / HTML / CSS / JQuery C#, VB, .NET 2.0, 3.5, 4.0, 4.5 Object Oriented Design N-Tier Design Test Driven Development Active Directory integration Financial APIs Hibernate / JPA JSP / Spring MVC / HTML5 / CSS3 / JQuery (UI) Vaadin (UI) Web Services (serve and consume SOAP, REST, JSON, XML) Activiti Workflow Engine (BPMN) Object Oriented Design N-Tier Design Test Driven Development LDAP / Active Directory integration • • • • • • • • Pastel Partner (designed my own API) Pastel Payroll (designed my own API) Sage Evolution SDK SagePay (Netcash) Debit Orders SagePay (Netcash) Payment Gateway MyGate Payment Gateway Absa Host-to-Host service FNB SFTP service Infrastructure • • • • • • • • Windows Server 2003 / 2008 / 2012 Active Directory Office365 DNS VPN Hyper-V Solaris VirtualBox Soft skills Soft skills • • • • Project management Good communicator Problem solver Mentoring “If you think hiring a professional is expensive, wait ‘til you see what an amateur costs you” 3 Curriculum Vitae – Morné Fourie – Senior ASP.Net and Java EE Developer Experience Software development lifecycle (SDLC) • • • • • • • • • Gathering business requirements Drawing up specification documents Sprint planning (Agile methodology) Implementation / Programming Testing Deployments to development, staging and production environments Monitoring and assigning bugs Database Administration (DBA) Project Management Database (SQL Server 2005 - 2016) • • • • • • • • • New installations and upgrades Data replication between sites Configuration and monitoring of jobs Implementation of ETL processes (SSIS and Talend) Report design (local reports and SSRS) Automated SQL Server backup strategies Views, Stored Procedures, Functions Design and maintain data stores for reporting Many data migrations Operating Systems / Infrastructure • Configuring and maintaining Windows Servers Software development • • • Networking • • • • • • • • Configuring virtual machines via Hyper-V and Oracle VirtualBox Setting up Active Directory and domain-wide Group Policies Configuring and maintaining IIS and Tomcat with multiple websites and FTP access Configuring Sharepoint services Configuring various web-based tools on Ubuntu servers Configuring WANs across Diginet, ADSL and 3G Configuring firewalls and VPNs across WANs Implementing multi-site network monitoring with pro-active email and SMS notifications Configuring and monitoring various network devices, including printers, routers and wireless access points. Hardware • (2003, 2008, 2012) • The development and support of Synergy, an in-house billing system Integration between Synergy and Pastel Partner, Pastel Evolution, Pastel Payroll, Fraxion, Netcash (SagePay), ABSA, Smart Software and the public facing website. Implementing E-commerce solutions via Netcash and various shopping carts Configuring and maintaining blade servers (IBM, HP, Sun, Dell) • • Setting up RAID configurations Deploying thin-client solutions (Revnetek, Artec and Oracle SunRays) • • Setting up server cabinets (servers, switches, power) Implementing multi-site hardware monitoring with pro-active email and SMS notifications “If you think hiring a professional is expensive, wait ‘til you see what an amateur costs you” 4 Curriculum Vitae – Morné Fourie – Senior ASP.Net and Java EE Developer History School I became a programmer at the age of 14, when I won 3rd place at South Africa’s National Computer Olympiad. I realised that I was a natural and continued exploring the world of programming by taking Computer Science as an extra school subject. Tertiary Qualification In 2006 I received my National Certificate in Datametrics through Unisa. My studies centred around systems analysis and various design methodologies. I use UML, Use Case, Flow Control, Timelines and other diagrams in my technical documents. Windows-based development I started out my Windows development career designing and implementing a multi-user CRM in Delphi and Access. Later I translated much of the Delphi code to C# (WinForms). Currently I am working on a multi-user middleware application (Synergy) for a listed company to integrate between Pastel and their existing school admin systems. It facilitates enrolments, invoicing and reporting over a multi-site architecture. Web development I have been doing web development since 1998, starting out with an open source CMS called Post-Nuke, where I gained experience in the LAMP stack (Linux, Apache, MySQL and PHP). Shortly after I started focussing on the Microsoft technology stack, starting with Classic ASP, where I specialised in customizing open source shopping carts and integrating them with various South African payment gateways. Since 2005, I focussed exclusively on ASP.Net and SQL Server. Most of my code is in C#, but I am also well versed in VB.Net. I follow best practice n-tier design in my architecture. I am also very proficient in T-SQL. My exposure to financial systems started when I was asked to implement real-time integrations with Pastel Partner and Sage Evolution. My billing engine generates more than 30000 accurate invoices per month. It also synchronises customer and supplier data between systems. Then the GL is kept in sync with an in-house Budget Management application, as well as a 3rd party Spend Management platform. Graphic design and CSS skills are strong points in my front-end designs. I found that appearance makes all the difference. Later I adopted several Java EE frameworks, including Spring, Hibernate and Service Oriented Architecture. In a strange way exposure to Java also improved my .NET skills. Today I am a true polyglot, having mastered many programming languages. Database development From 2011-2015, I was responsible for the company-wide data distribution strategy and the implementation thereof. We used SQL Server Merge Replication to maintain pairs of synchronised databases between 33 schools throughout South Africa. The sites benefited from local data access speeds in spite of sometimes having only 3G connectivity to Head Office. “If you think hiring a professional is expensive, wait ‘til you see what an amateur costs you” 5 Curriculum Vitae – Morné Fourie – Senior ASP.Net and Java EE Developer Academic Information Tertiary – UNISA - University Certificate in Datametrics 2003 to 2004 Subjects included: • Formal Logic • Business Information Systems • Systems Analysis and Design Methods • Practical Programming • Data Structures • OO concepts • Mathematics Supplementary Courses / Certifications 2000 Microsoft Certified Systems Engineer (MCSE) 2002 Delphi 6 and Oracle 8 Course Secondary - Zwaanswyk High School - Matric 1992 Subjects: • Afrikaans 1st language • English 2nd language • Mathematics • Physical Science • Accounting • Woodworking HG HG HG HG SG SG C B C D A C References References available on request “If you think hiring a professional is expensive, wait ‘til you see what an amateur costs you” 6