apiVersion: people/v1
kind: Person
metadata:
name: marcos-ashton-iglesias
labels:
location: exeter
seeking: graduate-swe-2027
spec:
bio: |
I'm Marcos, a final-year Computer Science student at the University of Exeter. I spend my time where software meets hardware: SIMD kernels for FFmpeg, backends and kernels for Keras and Apple's MLX, FPGA and ASIC designs, and GPU simulations.
This summer I built an inference benchmarking framework at Visa (Featurespace). I'm looking for graduate roles in London or elsewhere in Europe from July 2027.
Have a look around: the projects I have built, where I have worked, and a blog about what I learned along the way.
education: Final year, BSc Computer Science
university: University of Exeter, 2024 to 2027
skills:
languages: C, C++, Python, x86 Assembly, Rust, TypeScript, Java
tools: Linux, Git, GCC and Clang, Docker, Kubernetes, AWS, CUDA, TensorRT, Triton, ONNX Runtime
frameworks: PyTorch, JAX, Keras, MLX
tongues: English and Spanish, both native
experience:
- role: Software Engineer Intern
org: Visa (Featurespace), Cambridge
when: Jun 2026 to Aug 2026
stack: Python, Kubernetes, TensorRT, Triton, AWS
did:
- Built an inference benchmarking framework from scratch for the Tallier fraud model: a rate-driven load client and an automated 960-run sweep over 4 model sizes, 5 serving stacks, 11 AWS instance types and 4 precisions.
- Shipped a cost engine reporting $ per 1M inferences with p99.9 bootstrap confidence intervals. Its latency and cost curves (3.6 ms p50 on g6.2xlarge with TensorRT FP16) became the production serving and hardware recommendation.
- Finished two weeks early and joined the Kubernetes serving platform replacing SageMaker: CRD validation, S3 weight fetching, IAM and race-condition fixes.
- role: Open-source contributor, keras-team member
org: Keras (Google)
when: Jan 2026 to now
stack: Python, JAX, PyTorch, MLX
did:
- 100 merged pull requests across keras-team, including 53 into Keras core and 11 into kinetic. Invited to join the organisation.
- Top contributor to keras-mlx, the official Keras backend for Apple MLX (35 merged PRs). Fixed an integer div-by-zero crash upstream in MLX itself.
- Cut a torch BiLSTM training step from 391 ms to 120 ms (3.27x faster, 8x fewer kernel launches on an A100) by getting dispatch to engage cuDNN.
- role: Open-source contributor, General Assembly member
org: FFmpeg
when: Feb 2026 to now
stack: C, x86 Assembly, checkasm
did:
- 34 patches merged into the core repository, qualifying for voting membership of the General Assembly (Jul 2026).
- Hand-written x86 SIMD for hot paths that only had ARM NEON: SSSE3 median_sad8/16 (4.9x and 6.2x over C) and SSE2/AVX transform_4x4_luma for HEVC (4.4x).
- 18 FATE test suites for untested libavutil modules and pcm_bluray, each from 0% to 87 to 100% line coverage.
publications:
- title: Differentiable Lattice Boltzmann Simulation with Second-Order Boundary Conditions
url: https://zenodo.org/records/19709270
status:
contact:
github: https://github.com/MarcosAsh
linkedin: https://www.linkedin.com/in/marcos-ashton-3a228a255
email: marcosashiglesias@gmail.com
rss: /blog/feed.xml