Crypto - why?
The point of cryptocurrency is to provide a decentralized, secure, and efficient way to transfer value. Cryptocurrencies are not issued by any central authority, such as a government or bank, and they are not backed by any physical asset. Instead, they are created and maintained by a network of computers that are running a special software program. This software program is designed to verify and record cryptocurrency transactions, and to prevent fraud.
Latency Sensitive Microservices
Great talk by by Peter Lawrey regarding latency in micro-services. https://www.infoq.com/presentations/latency-sensitive-microservices/
Differences between Beam and Flink
Apache Beam vs. Apache Flink: Choosing the Right Distributed Processing Framework
Apache Beam and Apache Flink are both powerful open-source frameworks for distributed data processing, enabling efficient handling of massive datasets. While they share the common goal of parallel data processing, they differ significantly in their architecture, programming model, and execution strategies. Understanding these differences is crucial for choosing the right tool for your specific needs. This article will help you navigate the decision-making process.
Pushing the limits of the Google Cloud Platform
This one is better explained with the presentation below. If you want to learn how to run quantitative analytics at scale, it’s well worth a watch.
DevSecOps vs SRE
DevSecOps and SRE are two complementary approaches to ensuring the reliability and security of software systems.
DevSecOps is a practice that integrates security into the entire software development lifecycle (SDLC). This means that security is considered from the very beginning of the development process, and it is not an afterthought. DevSecOps teams work closely with development, operations, and security teams to ensure that security is built into the code from the start.
Creating high performance teams
Here are some tips on how to build high-performance teams:
- Start with the right people. The first step to building a high-performing team is to recruit the right people. This means finding individuals who are talented, motivated, and have the skills and experience to be successful.
- Set clear goals and expectations. Once you have the right people in place, it is important to set clear goals and expectations for the team. This will help to ensure that everyone is on the same page and working towards the same objectives.
- Foster communication and collaboration. High-performing teams are characterized by open and effective communication. Team members should feel comfortable sharing ideas and feedback, and they should be willing to collaborate on projects.
- Create a positive and supportive environment. A positive and supportive environment is essential for high-performing teams. Team members should feel valued and respected, and they should be encouraged to take risks and share their ideas.
- Provide regular feedback. Regular feedback is important for helping team members to improve their performance. Feedback should be constructive and helpful, and it should be given in a timely manner.
- Celebrate successes. It is important to celebrate successes as a team. This will help to boost morale and keep team members motivated.
By following these tips, you can build a high-performing team that is successful in achieving its goals.
Cash Equities: Order Management System
Built and maintained a client and market side booking service, off order book trade reporting engine and trade manager/repository
Like most banks, this one suffered from the not invented here syndrome. They had decided to pretty much reimplement the core libraries to optimize for Zero Garbage Collection, low latency and high throughput. Unfortunately they were not optimized for large development teams and maintainability.
I helped the team debug issues and introduce new functionality using a tech stack that consisted of Java, Groovy, Spring, FIX, JUnit, MSSQL and JRebel.
NoSQL vs SQL - Monitorama PDX 2014 - James Mickens - Computers are a Sadness, I am the Cure
Still one of the best talks I’ve ever seen https://vimeo.com/95066828
when technical debt becomes just debt
I’ve always hated the phrase “technical debt” as it can lead to items being banished to a backlog that are never addressed. For example, Knight Capital recently blamed a “technology issue” for a $440 million trading loss.
Nanex speculate that this may have been due to someone inadvertently testing in production.
Technical debt is really just debt that will be repaid in one way or another.
Iceberg and VWAP
Developed an eTrading platform routing client FIX flow to the firm’s Algorithmic Trading platform.
Used profiling/debugging tools to resolve critical issues around lost trade messages.
Java, YourKit, Swing, Spring, Tibco EMS, FIX