
Daniel Martínez SeguraSenior Software Engineer, Tech Lead & Project Lead
About me
Hello! I'm Daniel Martínez, a Senior Software Engineer with over 5 years of experience in web and mobile application development. I've worked with multiple technologies such as React, Angular, and Blazor to build scalable and modern web applications, adhering to industry standards and best practices.
Education and first steps
At the beginning of my career, having studied game development, I worked on video games and mobile applications using Unity3D and .NET, marking the start of my journey in software engineering. Later, I specialized in both web and cross-platform application development, leveraging technologies like .NET, Node.js, TypeScript, Kotlin, and Swift.
Languages and technologies
Although C# and TypeScript are my primary languages, I'm deeply passionate about software engineering and love learning new languages, tools, and technologies. This drive led me to expand my skillset into Kotlin and Swift for native mobile development. Additionally, I've worked with languages like Python, Rust, and Dart for personal learning projects, using frameworks and tools such as Flutter, FastAPI, and Rust-based backends. You can see every tool I use in detail in the technologies section.
Cloud and the full project lifecycle
Early in my project work, I had the opportunity to take an Amazon Web Services (AWS) course. Combined with professional hands-on experience in Azure and personal projects on Google Cloud Platform (GCP), this enabled me to move beyond pure software development into cloud administration and configuration. This broad expertise, managing the complete project lifecycle from requirements gathering and design to deployment and maintenance, whether in the cloud or on-premise, is what defines my senior engineering profile.
My own server and personal projects
For several years, I've maintained an on-premise dedicated server for personal projects. Combined with my Linux background from my studies, this has allowed me to master server administration and deployments using Docker, Nginx, and Jenkins. It gave me a comprehensive understanding of everything that happens post-development to reliably deliver end products to clients.
Professional experience and leadership
Throughout my career, I've led development teams, gaining strategic perspective beyond software code, such as identifying and aligning with core business needs. Additionally, I've stepped into Tech Lead roles because of my genuine passion for continuous improvement and my drive to take ownership of architectural decisions, tech stack choices, and engineering practices when launching new products.
Projects
Throughout my professional career, I have worked on various projects for different companies and private clients. In this section, you'll find all the projects I have worked on
Due to the great work I accomplished at the beginning of my time with them, I was appointed Technical Lead, taking on the role of deciding on technologies and implementing tools for the project.
This project was built with Angular and .NET, using clean code techniques and scalable architectures with the help of MediatR and NSwag, among others.
The project focused mainly on the .NET ecosystem with Blazor and Web APIs, although we later started using React with NextJS. We utilized DDD (Domain-Driven Design) architectures along with tools like MediatR and FluentValidation. Since we used Azure as our cloud provider, I gained in-depth knowledge of Azure and its integration with backends to secure and host applications.
Thanks to the training course I received during my time at CryptoWarTanks regarding AWS, and being named Project Lead, we leveraged the cloud to secure and deploy our applications through globalization techniques and content delivery, as we had users in Spain and Peru, among other places. We mainly used .NET with Web APIs and Blazor to build web applications, although Angular was later used for some projects. Additionally, I thoroughly researched non-relational databases with MongoDB to improve the application's read performance.
Here, I was involved in developing a mobile application using Unity3D to measure efficient driving habits through charts and device telemetry (GPS and accelerometer). The app recorded trip data, analyzing throttle and brake usage alongside distance traveled and other metrics to generate driving insights.
CryptoWarTanks
CryptoWarTanks
Due to a tight budget, I performed all available software engineering tasks:
- Full development of a multiplayer video game using Unity3D and Photon
- Development of a web application with React and Vite integrated with MetaMask for selling NFTs linked to a Web3 wallet
- Development of a cryptocurrency using Solidity on the blockchain, alongside smart contracts for random NFT generation based on purchases
- Backend development with .NET to manage user accounts and coins earned in matches
During this period, I completed an AWS course through which we hosted the backend and website with a CDN for global deployment and managed the necessary infrastructure, such as the database.
Labotec Games
Labotec Games
During this stage, I was involved in coordinating the 3D modeling, sound, and development teams to ensure that we, as Unity developers, had everything needed to progress with game development. We created a game for consoles and PC where I was heavily involved in implementing Photon for online multiplayer functionality.
Technologies
Throughout the years I've worked on various projects, I have learned a wide range of tools and processes that allow me to develop a product from start to finish across many different scenarios. I always maintain high quality in my code and build with scalability in mind.
Below, you can see the programming languages, tools, and infrastructure I use on a daily basis, as well as others I have explored on my own to continue growing professionally.
Software Development
Software Development
My primary language is C#, which is part of the .NET ecosystem. It’s where I learned how to code and understood the fundamentals of software development—starting with video games in Unity3D and later building websites and simple cross-platform applications with MAUI. In my early days with Unity and .NET, I learned a lot about code optimization since games are sensitive to performance drops. That knowledge later proved invaluable for creating well-structured, high-performance web applications and APIs. Within .NET, I have also worked on personal projects using F# to learn functional programming and its integration into the Microsoft ecosystem.
Second, I use TypeScript for web development. While I originally started with JavaScript, its lack of strict typing can lead to unmaintainable code in larger projects. That's why I always use TypeScript, bringing the structure and clarity JavaScript needs. Among the tools I use most with TypeScript are React with Next.js, Angular, and Capacitor for cross-platform development. Although I took my first web development steps using Blazor in .NET, I quickly moved on to React and Angular, as they are far more widely adopted globally and offer a more streamlined development workflow.
Finally, I also develop native cross-platform mobile apps using tools like Kotlin Multiplatform (utilizing native SwiftUI and Jetpack Compose) as well as Flutter. It has been my latest major discovery, and I really enjoy using it to build and publish my own native apps to the Google Play Store and App Store.
Infrastructure
Infrastructure
I also rely on essential tools throughout the application lifecycle, including databases, containers, and messaging services. I have solid experience with relational databases like SQL Server and PostgreSQL, as well as non-relational databases like MongoDB.
Lastly, regarding messaging services, RabbitMQ is the one I have used most to delegate background tasks—such as sending emails or processing images on the server. For containerization, I use Docker not only to deploy applications, but also to maintain a unified, easy-to-run local development environment.





