Posts
What are the difference between Apache Beam and Apache Flink?
Apache Beam and Apache Flink are both distributed computing frameworks for processing large amounts of data in parallel, but they have some fundamental differences in their design and functionality.
Apache Beam is a unified programming model for batch and streaming data processing, which provides a high-level API that allows developers to write data processing pipelines that can run on various execution engines, including Apache Flink, Apache Spark, and Google Cloud Dataflow.
read morePosts
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.
read morePosts
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.
read morePosts
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.
read morePosts
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.
read morePosts
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
read morePosts
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.
read morePosts
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
read morePosts
Blockchain - why?
The point of blockchain is to provide a secure and transparent way to store and track data. Blockchain is a distributed ledger technology that uses cryptography to secure and verify transactions. This means that data stored on the blockchain cannot be tampered with or altered without the consent of the network.
Here are some of the potential benefits of blockchain:
Security: Blockchain is very secure because it is very difficult to hack or tamper with.
read morePosts
Load a file and print out lines in a random order
public static void main(String args\[\]) throws IOException{ List<String\> lines \= Files.readAllLines(Paths.get("test.txt")); Random r \= new Random(); while(!lines.isEmpty()){ String nextLine \= lines.get(r.nextInt(lines.size())); System.out.println(nextLine); lines.remove(nextLine); } }
read more