Who Am I?

Greetings, My name is Sarah Anderson, I am a programmer with a wide variety of skills from developing websites to making games. I Graduated from London Metropolitan University in 2015 with a First Class Honours in Computer Games Programming.

Since July 2017, I have been working for Business Data International LTD and its sister company’s Growing Minds International LTD, Newsvend LTD and Business Sale Report LTD. In this role, I undertook the modernization of several of our websites to the latest version of Laravel, these included two websites built on a zend framework 1 backend, one built with typo and another built using AppleScript. On top of this I also constructed a WordPress website with a custom theme.

Beyond my role as a developer, I also oversaw all our IT Systems. This included transferring our largest site from a Linux server over to an AWS, and maintaining another Linux server with WHM which hosted our other sites, as well as maintaining an internal windows server we used to host a local copy FileMaker server.

From October 2015 to June 2017, I was working at Billericay IT which also trades under the names of Basildon IT and Billericay Web Services. My Primary role was front-end and back-end website development using existing content management systems (CMS), and our own in house CMS and maintaining these websites. On top of website development, I also managed the virtual server that hosts all the websites we had developed. Occasionally, I also provided remote support for clients that had issues with their websites and emals.

What are my Skills?

HTML: One of the modules we learnt in my first year of university was Website Development. During this module we were taught the basics of web development using HTML to create our own portfolio website that we would keep updated throughout university. Since graduating university, I have begun work as a web developer and gained a largse sum of experience using HTML.

CSS: I first learnt about CSS during the Website Development module at university where we were taught the basics of CSS. In the years since I have been working as a web developer, I have gained a large sum of hands on expeirence using CSS which has given my an extensive knowledge of it.

JavaScript: In my Website Development module at university we were required to build a game with a theme of ghosts in JavaScript with a HTML Canvas and I also used to to animate certain elements of my portfolio website. In the years since university, I have had many chances to work with javascript and javascript libraries inlcuding jquery, three.js and chart.js.

PHP: My first experience working with PHP was when I started work at Billericay IT, I intially used for editing WordPress websites, but since then I have had the opporuntities to build large complex systems with PHP.

MySQL: Similiar to PHP, I had never used MySQL until I started working at billericay IT, but I gained the most experience using it for Business Data International where I was often required to write detailed queries to export data from databases with hundreds of thousands of rows.

Laravel: When I started at Business Data International, my first major project was a website using Laravel 5.5, since then I have used it to created two much larger, more complex websites taking advantage of many of Laravels features.

Zend Framework: A number of websites run by Business Data international were running on Zend Framework 1, and it was my responsibility to keep these maintained and add new features.

WordPress: During my time as a web developer, I have used Wordpress to create a a variety of websites using existing themes and creating our own, as well as creating and implenting custom plugins.

Adobe Suite: Throughout university and at work, I have gained a lot of experience using a vairety of adobe products, including photoshop to edit images, illustrator and fireworks to create graphics and dreamweaver for web development.

C++: Whilst at university, I was taught how to develop applications and games using C++ and a variaty of C++ libraries including OpenGL and DirectX. With this knowledge, we were required to create a variety of applications, including a physics simulation of a spacecraft landing, a demonstration of AI techniques and a group project.

Java: My first experience with java was at university where we were required to build a 3D game for android devices using the OpenGL Graphics Library. After making that particular game, I went on to create a variety of personal projects using Java and OpenGL for PC and Mac to further develop my knowledge of Java. This eventually led to me being quite familiar with the Java language, and ultimately, I choose to develop my final year project in Java. I have continued to practice Java for a number of pet projects.

C#: During my first year of uni, we were taught the C# language with XNA Game Studio for which I eventually developed my first game which was a two player side scrolling bullet hell. Then in my second year I needed to make a game to interact with my digital toy design project, so I used C# to make another game that interacted with windows serial port to read input from a custom built controller.

ARM: To get us familiarised with the necessity of memory management when developing games, my university tasked us with making a functional game for the Gameboy Advance which used the ARM Assembly language.

ActionScript: In my first year of university, to get us accustomed to working with the artists course, we were required to make a flash game using actionscript.

OpenGL: In a variety of my projects at university, I choose to use the OpenGl Graphics Library to provide the basic rendering functions of my games. I used the graphics library to make a variety of advanced rendering techniques such as shadow mapping which creates realistic dynamic shadows and deffered lighting which allows for hundreds of dynamic lights with little GPU cost.

DirectX: For a handful of my projects I used the DirectX graphics library for rendering functions. With this graphics library, I created advanced bump mapping and normal mapping which would allow for lower poly models without the usual lose of lighting detail.

GLSL: GLSL or GL Shading language as its known, is used to provide the GPU with instructions on how polys and textures are rendered and outputted. I taught myself GLSL during my second year at university so that I could create games with far greater graphical integrity.

HLSL: HLSL or High Level Shading Language as its known is also used to provide the GPU with instructions on rendering, but it is limited to only windows devices. I learnt HLSL as part of my third year group project so I could implement bump mapping and normal mapping into the game.