Dan Ark, Developer in London, United Kingdom
Dan is available for hire
Hire Dan

Dan Ark

Verified Expert  in Engineering

Software Developer

Location
London, United Kingdom
Toptal Member Since
July 5, 2017

Dan is a senior software development engineer who has worked with a variety of company types—ranging from large international corporations such as Amazon and Microsoft to a leading a startup team in London. He's passionate about technology and the power of computer science to make an impact. He is very experienced in all tiers of development using open-source technologies.

Portfolio

Amazon
Amazon Web Services (AWS), Python, Java
Reflection
Docker, Google Cloud, Python, Java
The Hut Group
Python, PostgreSQL, Redis, Apache Kafka, Spring, Java

Experience

Availability

Part-time

Preferred Environment

Git, Linux, Visual Studio, JetBrains

The most amazing...

...thing I’ve made was a highly scalable cloud service that processed terabytes of data in parallel and in limited time—handling thousands of requests/sec.

Work Experience

Software Development Engineer

2017 - PRESENT
Amazon
  • Developed a highly concurrent, low-latency, high-throughput service with a requirement to handle 200,000 transactions per second.
  • Configured L1 and L2 caches with various eviction strategies to reduce response latency and load on downstream services.
  • Comprehensively covered the service with performance metrics for issue detection.
  • Achieved a 99.87% service availability rate.
  • Regularly performed load tests to estimate the optimal amount of hardware resources during exceptional days (e.g., Black Friday, Prime day).
  • Routinely conducted A/B experiments to identify the most profitable offers to display.
  • Led client traffic migration processes from old services to the new ones.
  • Configured a scaling planner based on emitted metrics and traffic patterns to make it scale the the VM fleet to match the demand.
  • Participated in on-call duties which involved 24/7 on-call support for a production-critical, customer-facing service.
Technologies: Amazon Web Services (AWS), Python, Java

Senior Software Engineer

2016 - 2017
Reflection
  • Developed from scratch a highly scalable cloud service with the requirement to processes terabytes of data in parallel, in a limited amount of time.
  • Structured and stored data efficiently. Optimized it for fast access.
  • Dockerized processing workers for an efficient-and-cheap scalable architecture.
  • Configured the CI environment—including the integration and an automated end-to-end selenium test.
  • Interacted closely with the business, gathered requirements and converting these requirements into technical tasks.
  • Delivered a project on time which in turn allowed for the product to be demonstrated to investors and then secured an investment exceeding £700,000.
Technologies: Docker, Google Cloud, Python, Java

Senior Software Engineer

2015 - 2016
The Hut Group
  • Designed and developed a low-latency, concurrent Java REST personalization service that could handle and scale to thousands of requests per second.
  • Developed a high-throughput real-time data pipeline to capture customer events such as page clicks, products views, add to basket, and product orders.
  • Led a Scrum team of three developers—was responsible for personalizing all the company websites by defining and directing its product development and vision.
  • Prioritized, efficiently planned, and executed sprints which resulted in an incremental value delivery to the business.
  • Ran a number of A/B experiments to perform informative data-driven business decisions.
  • Optimized the JVM garbage collection to minimize the number of major collections due to a very intense system load.
Technologies: Python, PostgreSQL, Redis, Apache Kafka, Spring, Java

Software Developer

2013 - 2014
The Hut Group
  • Delivered a search engine redesign and optimization; developed a highly scalable Java REST search module that processed more than 1,000 relative product search responses per second across all company websites.
  • Designed and implemented product recommendation services based on customer purchase and page navigation data. The process involved parallel big data analysis using core technologies, including Hadoop and Elasticsearch.
  • Implemented an algorithmic ad-bidding system; the project objective was to automatically set an optimal bid price for a given keyword on Google Adwords.
  • Conducted JVM profiling and optimization—debugging and identifying memory leaks.
  • Structured the stored data efficiently to achieve a minimum response time while queuing.
Technologies: MySQL, MongoDB, Elasticsearch, Java

Software Engineer

2011 - 2012
Microsoft
  • Developed internal applications to build and maintain the Office.com web page.
  • Built a highly optimized internal library to pull data from multiple data sources such as SQL and SharePoint.
  • Deployed and monitored the stability of high-load services.
  • Programmatically migrated a large SQL database to a new server node; including storage and equipment replacement and software updates.
  • Developed an iOS application to CRUD SharePoint documents.
Technologies: Windows Presentation Foundation (WPF), Windows Communication Foundation (WCF), SQL, C#

Market Intelligence Platform

I developed a highly scalable Java cloud service that could process terabytes of data in parallel and in a limited amount of time. Using the Google cloud infrastructure, I built an intelligence platform to analyze iOS and Google Play markets. I successfully delivered the project on time and demonstrated the product capabilities to major investors—helping the company to raise more than £700,000 for its next funding round.

Personalization Service

I designed and developed a low-latency (under 30 milliseconds), concurrent Java REST personalization service that could handle and scale to thousands of requests per second. The project objective was to target different customer segments by displaying personalized content and special offers. The process involved a build-up of a high-throughput, distributed Kafka messaging system. The project has been integrated with all major company services such as a search, automated email marketing, recommendations, and analytics.

Languages

Java, SQL, Python, C#, C#.NET

Frameworks

Spring, .NET, AngularJS, Mockito, Selenium, Windows Presentation Foundation (WPF), Flask, Hadoop

Storage

MySQL, Redis, NoSQL, Elasticsearch, MongoDB, Google Cloud, Amazon S3 (AWS S3), PostgreSQL

Other

Low Latency, Scalability, Data Processing, Windows Communication Foundation (WCF)

Tools

Amazon Elastic Container Service (Amazon ECS), Amazon Elastic Container Registry (ECR), Git, JetBrains, Visual Studio, Subversion (SVN)

Paradigms

Concurrent Programming, Agile Software Development

Platforms

Linux, Apache Kafka, Docker, Amazon Web Services (AWS)

2009 - 2013

Bachelor of Science Degree in Computer Science

University of Manchester - Manchester, UK

Collaboration That Works

How to Work with Toptal

Toptal matches you directly with global industry experts from our network in hours—not weeks or months.

1

Share your needs

Discuss your requirements and refine your scope in a call with a Toptal domain expert.
2

Choose your talent

Get a short list of expertly matched talent within 24 hours to review, interview, and choose from.
3

Start your risk-free talent trial

Work with your chosen talent on a trial basis for up to two weeks. Pay only if you decide to hire them.

Top talent is in high demand.

Start hiring