Location
PortugalRate
Years of experience
12+About
As a versatile and focused software engineer with over 12 years of commercial experience, I have developed high-performance backend applications and am now seeking opportunities to leverage my expertise in software development and leadership skills to contribute to innovative projects. Throughout my career, I have worked with a range of technologies, including Python, C++, Django, and various microservices architectures. At Ebury, I developed and maintained quoting applications and treasury-related systems, integrating FIX messages from liquidity providers and publishing them in Postgres DBs and Kafka pipelines. My role also involved monitoring production systems using Kibana, Prometheus, and Sentry, and migrating components from C++ to Python. During my tenure at BMW with Critical Techworks, I implemented AndroidAuto and CarPlay support, developed embedded applications, and mentored junior engineers. My experience at Nokia involved adapting 3G and 4G parsers for microservices architecture, continuously improving network support, and insourcing an ETL component to Nokia systems. I started my career as a Junior Software Developer at Galp, where I designed and developed new features using various programming languages and databases. My educational background includes a M.Sc. and B.Sc. in Computer Science from the University of Minho, and I hold a certification in Linux Kernel Debugging and Security from The Linux Foundation. I am proficient in several programming languages and frameworks, with a strong interest in RUST and Golang, and I am experienced with various technologies including AWS, Docker, and Kubernetes.Tech Stack
C++, AWS, Bash, Django, Docker, Java, Oracle, Python, REST APIsExperience
- At Ebury, I developed and maintained quoting related applications using Python/Django with a microservices architecture, integrating FIX messages from liquidity providers and publishing them in Postgres DBs and Kafka pipelines.
- I managed treasury related applications built in Python Django with microservices architecture, communicating with 3rd parties via REST APIs and deployed in AWS.
- I monitored production systems via Kibana, Prometheus, and Sentry to ensure their smooth operation and quickly address any issues.
- Successfully migrated components in C++ to Python using existing architecture and tools at Ebury.
- At BMW, I implemented BMW AndroidAuto and CarPlay support using C++, Python, QT core, Yocto, iOS, and Android frameworks.
- I mentored junior engineers, led proof of concept projects, and facilitated agile (scrum) ceremonies at BMW.
- At Nokia, I adapted 3G and 4G performance-critical parsers for microservices architecture using C++, Python, and Docker, with multi-telecom vendor support, and continuously improved support for performance-critical parsers for 2G, 3G, and 4G networks.
Employment history
● Developed and maintained quoting related applications using Python/Django with microservices architecture, integrating FIX messages from liquidity providers and publishing them in Postgres DBs and Kafka pipelines.
● Managed treasury related applications built in Python Django with microservices architecture, communicating with 3rd parties via REST APIs and deployed in AWS.
● Monitored production systems via Kibana, Prometheus, and Sentry.
● Successfully migrated components in C++ to Python using existing architecture and tools.
● Implemented BMW AndroidAuto and CarPlay support using C++, Python, QT core, Yocto, iOS, and Android framework.
● Developed embedded applications using C++, RabbitMQ, Protocol Buffers, and Covesa tools.
● Mentored junior engineers, led proof of concept projects, and facilitated agile (scrum) ceremonies.
● Adapted 3G and 4G performance-critical parsers for microservices architecture using C++, Python, and Docker, with
multi-telecom vendor support.
● Continuously improved support for performance-critical parsers for 2G, 3G, and 4G networks using C++, Python, and
Java.
● Successfully insourced an ETL component to Nokia systems using C++, Oracle, Red Hat, Python, and VMware,
achieving full CI support and increasing test coverage to 100%.
● Designed and developed new features for various applications using Pro*C, C++, C#, PL/SQL, and Oracle DB to meet project requirements and enhance system functionality.
● Utilized PL/SQL and Oracle DB to create, modify, and manage database schemas, stored procedures, and queries, ensuring data integrity and optimizing database performance.
● Wrote, tested, and maintained high-quality code in C++, C#, and Pro*C, adhering to coding standards and best practices to ensure robust and maintainable software solutions.
● Integrated new features and modules into existing systems, performing necessary configuration and ensuring seamless interaction with other components.
● Provided technical support and troubleshooting for developed features, addressing any issues or bugs that arose, and implementing timely fixes to maintain system reliability.
● Conducted performance analysis and optimization of applications and database queries to improve efficiency and reduce processing time.
● Collaborated with team members, stakeholders, and clients to gather requirements, discuss project progress, and ensure alignment with business goals. Documented code, design specifications, and user manuals to facilitate knowledge sharing and project continuity.
● Conducted research and development on cutting-edge computer science projects, focusing on innovative solutions and advancements in technology.
● Gathered and analyzed data using statistical methods and computational tools to support research hypotheses and objectives.
● Performed comprehensive literature reviews to identify current trends, gaps, and advancements in the field of computer science, ensuring research was informed by the latest knowledge.
● Designed and implemented algorithms to address specific research problems, testing and refining them to achieve optimal performance.
● Collaborated with fellow researchers, faculty members, and industry professionals to exchange ideas, discuss findings, and advance joint research initiatives.
● Documented research methodologies, experiments, results, and conclusions in technical reports and research papers for publication and presentation at conferences.
● Presented research findings at internal meetings, seminars, and conferences, effectively communicating complex concepts and results to a diverse audience.