Profile Photo

TUNG V. N. NGUYEN

Senior Software Engineer | Full Stack Developer | Data Engineer | EMBL-EBI

Contact

+44 (0)7784 ABC XYZ     nvntung@gmail.com     Cambridge, England, United Kingdom     LinkedIn.com     Google Scholar     My GitHub     BioModels on GitHub     My Bitbucket     BioModels on Bitbucket     ITersDesktop    

Education

PhD in Computer Science
Université de Bordeaux, Oct 2010 — Feb 2015 Talence, France

Master's in Software Engineering
Université de Bordeaux Sep 2007 — Dec 2009 Ho Chi Minh City, Vietnam

Bachelor's in Computer Science
University of Quy Nhon Sep 2000 — Jun 2004 Quy Nhon, Vietnam

Soft Skills

Agile Methodologies, Exhibit Leadership and mentorship, Problem-solving, Time Management, Priority, Teamwork, Communication, Software Development, Software Architecture Design, Debugging, Technological literacy, Organisation, Adaptability, Empathy, Data analysis, Dependability

Certifications

Application Development using Microservices and Serverless
(Issued on Dec 27, 2024 by Coursera)

Advanced and detailed study of creating microservices using various methodologies and running the applications on the IBM Cloud Code Engine with Openshift.
Continuous Integration and Continuous Delivery (CI/CD)
(Issued on Nov 23, 2024 by Coursera)

Revised the key features of CI, explore social coding, and the Git Feature Branch Workflow. Grasped how to build and run a CI/CD pipeline to an OpenShift Kubernetes cluster, also discovered standard CD tools.
See more certifications: https://tinyurl.com/tomcerts

Languages

Vietnamese
Native
English
Fluent
French
Lower Inter
Spanish
Beginner

Hobbies

Badminton
Playing in the regional league as my best strong sport
Swimming
Going to swimming pool every Tuesday with my family

References

Prof Dr Beurton-Aimar Marie
My PhD supervisor, LaBRI, Université de Bordeaux, France
Henning Hermjakob
Group Leader, Molecular Networks, EMBL-EBI, United Kingdom
Dr Rahuman S Malik-Sheriff
Project Leader, EMBL-EBI, United Kingdom
Mihai Glont
Tech Lead, Featurespace, VISA Inc., United Kingdom

(Note: Details of the references are available upon request.)

Summary

With over 20 years of professional experience, I'm driven to leverage my expertise in full-stack development, cutting-edge back-end and front-end technologies, cloud-based solutions to drive product innovation. Enthusiastic, good work ethics, reliable. Independently and professionally manages BioModels production system across the large codebase. Good task prioritisation. Proactive. Very approachable, always eager to support database curators or external users. Excellent work in preparing an archival instance of BioModels in BioStudies, including good collaboration with BioStudies team. In the process also intensified collaboration with other EBI resources like EuropePMC, identifiers.org, and Reactome. I am looking for my next opportunity as a Senior Software Engineer or Full Stack Developer, and I'm open to either full-time or contract arrangements.

Professional Skills

Java ecosystem

  • Core Platform Components: Java Virtual Machine (JVM), Java Runtime Environment (JRE), Java Development Kit (JDK) and Java Standard Libraries (APIs).
  • Core Java: OOP, Collections, Generics and Exception Handling.
  • Functional Java: Lambda, Streams API, Optional, Method References.
  • Multithreading & Concurrency: Virtual threads, Actor Model (scala), Executors, Thread Contention (volatile, atomic, semaphore), CompletableFuture, Reactive pipeline, structured concurrency.
  • Java EE: Servlets, JSP, JPA, JMS
  • Spring Framework: Framework Core, Boot, MVC, Data, Security, JPA
  • Grails Framework: Groovy, Framework Core, GORM (Grails Object Relational Mapping), Domain Classes, Controllers, Services, Tag Libraries, Plug-ins, RESTful Web Services, Scaffolding, Convention over Configuration, Hibernate, Gradle/Maven, REST API Development, Groovy DSL, WebFlow, GSP, Grails CLI.
  • Persistence & Databases: JDBC, Hibernate, JPA.
  • Web Development: REST, JSON, WebSockets.
  • Testing & Debugging: JUnit, Mockito, Selenium, Logging (SLF4J, Log4j).
  • Build & Deployment: Maven, Gradle, Docker.
  • Microservices & Messaging: Spring Boot Microservices, Quarkus, Kafka, RabbitMQ.

Python, Data Science and AI

  • Core Python: standard libraries (IO, Data Structures and Algorithms, Numerical and Scientific Computing), Concurrency and Parallelism, Networking and Internet Protocols, Text Processing and Manipulation.
  • Utilities: Virtual Environment Management (pyenv, virtualenv, Conda, Anaconda), Packaging tools (pipenv, poetry, hatch, pdm).
  • Tools for Data Science: Pandas, Numpy, Matplotlib, Plotly, Seaborn, Bokeh, Scikit-learn, Tensorflow, Keras, Pytorch, SciPy, Jupyter Notebook.
  • Web: Flask, Fast API, Bottle, Django; Python ORM: SQLAlchemy, Peewee, PonyORM
  • LLM: Models: GPT-4, Claude, Llama, or Mistral. APIs and Tools: OpenAI API, LangChain, LlamaIndex, Transformers, Encoder, Decoder, Hugging Face Transformers, Model Tuning.

Cloud & CI/CD

  • Cloud Platform: AWS, GCP.
  • Containerization & Orchestration: Docker, Vagrant, Terraform.
  • CI/CD Pipelines: GitLab CI/CD, GitHub Actions.
  • Monitoring & Logging: Prometheus, ELK Stack (Elasticsearch, Logstash, Kibana).
  • Security & Authentication: OAuth, IAM, Vault.

Relational Databases (SQL-based)

  • Databases: MS SQL, MySQL, PostgreSQL, Oracle.
  • Core Skills: SQL, Indexing, Transactions (ACID), Stored Procedures, Query Optimization.

Non-Relational Databases (NoSQL)

  • Key-Value Stores: Redis, Amazon DynamoDB.
  • Document Stores: MongoDB.

Search & Indexing (Lucene-based)

  • Lucene Core: Full-text search, indexing, tokenization.
  • Elasticsearch: Distributed search, aggregations, real-time analytics.

Financial Skills

  • Trading and Investment Systems: order management, execution (algorithmic trading), clearing, and settlement.
  • Core Trading models: Trend-Following Models (Moving Average Crossover - MAC, Breakout), Momentum Indicators (Relative Strength Index - RSI, Moving Average Convergence Divergence - MACD), Mean Reversion Models (Bollinger Bands/RSI model), Arbitrage and Statistical Models.
  • Regulatory Compliance: Anti-Money Laundering - AML, Know Your Customer - KYC, GDPR.
  • Security Protocols: secure coding practices, encryption (e.g., public-key cryptography), and authentication protocols (e.g., OAuth 2.0).
  • Libraries, API, Tools for analysing: REST API, Websocket, yfinance, Pandas, Numpy, Matplotlib, Plotly, Seaborn, Bokeh.

Techniques to Low Latency

  • Netty & NIO Channels: Non-blocking I/O for high-performance networking.
  • JNI & JNA: Calling native code from Java for ultra-low latency operations.
  • Optimized Data Structures: Lock-free queues, ring buffers (Disruptor pattern).
  • JVM Performance Tuning & Profiling: GC Optimization, JMC, JFR, Heap Sizing, Escape Analysis.
  • Networking Optimization: TCP tuning, netty Epoll/Kqueue, Direct Buffers.
  • Code Optimization: Microbenchmarking, Vectorization (SIMD), Compiler Intrinsics.

UI Skills

  • Core Web: HTML, CSS, JavaScript, TypeScript.
  • Frontend Frameworks: Vue.js, JQuery, Mustache template.
  • Component Libraries: Bootstrap, Foundation CSS.
  • REST & API Integration: Fetch API, Axios, WebSockets.
  • Performance Optimization: Lazy Loading, Code Splitting, Virtual DOM.
  • Testing: Selenium, Jest, React Testing Library.
  • Build & Deployment: Webpack, Vite, NPM/Yarn.

Work Experience

Senior Software Engineer
EMBL-EBI  Oct 2019 — Dec 2025 Cambridge, United Kingdom

  • Successfully deployed and operationalised the complex BioModels platform to AWS Elastic Compute Cloud (EC2) instances. Monitored and managed the instances to ensure optimal resource utilisation and maintain operations within defined budget constraints.
  • Engineered and deployed the BioModels platform onto a Kubernetes cloud environment, implementing modern security design principles across a complex system of interconnected distributed services.
  • Led the cloud migration of legacy BioModels services (built in PHP, Node.js, and MongoDB/NoSQL) to the institutional Kubernetes cloud, demonstrating expertise across a diverse technology stack.
  • Enhanced user experience by deploying Redis caching, drastically decreasing the BioModels homepage load time from over one minute to under 2 seconds.
  • Optimized the CI/CD pipeline (using GitLab) and refactored the monolithic codebase, reducing Kubernetes deployment time by 75% (from 12 minutes to 3 minutes).
  • Developed multiple Microservices to handle critical operations:
    • A Spring Boot 2.0 (Java) service for CombineArchive file generation.
    • A Flask (Python) service to manage large file transfers (over 1GB).
    • A FastAPI (Python) service integrated with Slurm and IBM Spectrum LSF for seamless request exchange with the High-Performance Computing (HPC) Cluster.
  • Extended the REST API to enable programmatic data submissions, allowing collaborators to manage and update over 1,000 curated models.
  • Created robust Python pipelines and GitHub Actions to automate large data submissions and synchronisation with the BioStudies mirror repository, utilizing Redis caching and Bash scripting.
  • Applied advanced Java concepts, including Multithreading, Concurrency (CompletableFuture), and the Stream API, to develop highly performant and scalable platform features.
  • Utilized Software Design and Architectural best practices, including GoF Design Patterns, Domain-Driven Design (DDD), Microservices, and Message Queues/Streams (Redis Stream, Apache Camel).
  • The technologies and languages I am proficient in:
    • Cloud/DevOps: Kubernetes, Docker, GitLab (CI/CD), GitHub Actions, Slurm (HPC).
    • Backend & Core Language: Java (Spring Boot), Python (Flask, FastAPI, Django), PHP, Laravel, Node.js, Groovy (Legacy), Bash.
    • Data & Messaging: MongoDB, NoSQL, Redis (Cache, Stream), Apache Camel.
    • Architecture: Microservices, DDD, GoF Design Patterns, REST API, DTOs, MVC.
    • Frontend: React, Vue.js.

Software Engineer
EMBL-EBI   Nov 2015 — Sep 2019 Cambridge, United Kingdom

Software Development and Maintenance

  • Led the upgrade and modernisation of the BioModels platform using JUMMP (built with Grails Groovy and Java), maintaining existing complex business logic while implementing critical new features.
  • Contributed to the DDMoRe and DeepOC projects, focusing on developing robust and scalable computational model repositories.
  • Designed and implemented model repository features to support various community standards and formats, including SBML, PharmML, and MDL.
  • Integrated industry standards for data discoverability, working extensively with Ontologies, Metadata (RDF), and FAIRness principles.
  • Maintained and enhanced legacy systems while actively participating in the transition to modern architecture patterns.

Backend Engineering and Performance

  • Applied advanced Java concepts, including Object-Oriented Programming (OOP), Multithreading, and comprehensive Exception Handling.
  • Optimized application performance through strategic JVM tuning, including JVM arguments and Garbage Collection (GC) analysis.
  • Implemented Object-Relational Mapping (ORM) using Hibernate/JPA, managing complex entity relationships and leveraging caching strategies to improve database efficiency.
  • Developed and maintained indexing-based search capabilities using Solr and BioSolr to support high-performance data retrieval.
  • Integrated services with High-Performance Computing (HPC) resources using IBM Spectrum LSF.

Quality Assurance and Software Design

  • Ensured code quality and reliability through comprehensive Testing, including Unit Testing (JUnit, Mockito), Integration Testing, and End-to-End Testing.
  • Follow core Software Design Principles such as SOLID, DRY (Don't Repeat Yourself), and KISS (Keep It Simple, Stupid) to produce maintainable and extensible code.
  • Championed Clean Code and Coding Standards best practices, focusing on robust error handling, clear documentation, and consistent naming conventions.

Technology Stack and Workflow

  • Backend: Java, Spring Framework, Grails 2.x, Groovy, MySQL, LDAP, Bash scripting.
  • Frontend: Developed user interfaces using Angular 8, ReactJS, JavaScript, jQuery, Backbone, and legacy AngularJS 1.0 frameworks; proficient with Foundation and Bootstrap CSS frameworks.
  • Development Tools: Practiced Agile methodologies; utilised Git for version control, JIRA for project management, and Maven/Gradle for build automation.

PhD Student
LaBRI   Oct 2010 — Feb 2015 Bordeaux, France

  • Investigated and proposed a potential approach to analyse the enormous sets of elementary flux modes in metabolic plant cell networks, then integrate the analysed results for finding motifs: employed Minimal Cut Sets into analysing feasible pathways. Studied methods of complex network analysis, clustering algorithms.
  • Built and modelled biological graphs. Researched solutions for the project and completed the final report as the doctoral thesis.
  • Participated in conferences, workshops and gave two talks on related works.
  • Used C++, Python, and R programming language massively.

Software Developer — Trainee
LaBRI   Jun 2009 — Nov 2009 Bordeaux, France

  • Researched and implemented a Graph Editor in 3D using Common Lisp programming language to manage metabolic networks. It allows users to visualise graphs in 3D and interact with their graphical elements.

University Lecturer
Hoa Sen University   Aug 2004 — Oct 2010 Ho Chi Minh City, Vietnam

  • Be responsible for the syllabuses of the courses about Microsoft Office suite, the courses about Web Design with Dreamweaver and Presentation Design with PowerPoint. Delivered these courses as well as supervised students.
  • Designed and delivered new Software Engineering courses: Software Architecture using Design Patterns and Usability Engineering.
  • Supervised research groups and supported students through a pastoral or advisory role.
  • Participated in staff training activities.
  • Published a book on Microsoft Excel 2010 in 2010 in Vietnamese.
  • Webmaster for the Department of Maths and Information Technology’s website.

Projects

DDMoRe (A Drug Disease Model Resources)
Maintain and enhance the published open-source DDMoRe standards and tools to deliver and improve the quality, efficiency and cost-effectiveness of Model-Informed Drug Discovery & Development (MID3) and Therapeutic Use. I contributed to developing and delivering its model repository, and it is an open source project named JUMMP (JUst a Model Management Platform).

BioModels using JUMMP
A repository of mathematical models of biological and biomedical systems. It hosts a vast selection of existing literature-based physiologically and pharmaceutically relevant mechanistic models in standard formats. Our mission is to provide the systems modelling community with reproducible, high-quality, freely accessible models published in the scientific literature.

DeepOC
Developed a Deep Learning model to classify the models deposited in BioModels based on their Gene Ontology information using Deep Learning. The deliverables are a Deep Learning model implemented in Tensorflow and an D3 zoomable sunburst chart to facilitate browsing models based classes, automating the classification and predicting new classes.