Software developer and devops journeyman ready for the next gig
I've just finished a challenging and satisfying stretch of work at HSBC, and I am ready to continue my professional coding career in a permanent or contractor role.
During this latest engagement our team of six was tasked with delivering interoperability between:
1) an award-winning FX trading platform based on microservices and continuously deployed to production in the spirit of cutting-edge devops and agile principles, and
2) a monolithic legacy corporate payments service with a quarterly release cycle.
I'm a career-changer who plunged into commercial coding rather late in life. Before that, I used to be a Formula One team member, BBC journalist and desk editor, multilingual video team lead, cameraman, photographer and editor, due diligence analyst, interpreter and translator, and, once, a head of international PR for a supercar startup. With a degree in international law.
My interest in programming brought me to Makers Academy, a leading developer bootcamp, which gave me a solid basis in modern software engineering practices and allowed me to start programming professionally and to be a tutor at Rails events. Subsequent commercial experience in a global bank provided valuable insights into how complex financial software systems are designed, delivered, scaled and maintained. I'm looking forward to continuing this journey.
I believe that microservice architecture is optimal for complicated systems, allowing for flexibility, resilience and scalability. Clojure is well suited to the task and, besides, I just happen to like it a lot.
Tech: Clojure, Ring, Compojure, Jetty, Cranker (a reverse proxy service)
I worked with Nic Ferrier, a self-described 'grizzled hacker', Lisp and Unix guru and a passionate devops advocate. Under his leadership, every dev team in HSBC GFX was responsible for testing and deploying their code to production, as well as supporting it afterwards. The ideology of delivering smallest possible incremental changes (self-tested at startup by automated change tests and automatically rolled back in case of failure) allowed the department to minimise service downtime and production incidents count, keeping the big codebase flexible and maintainable.
Tech: Git, Jenkins, TeamCity, Nexus, Geneos, Splunk, Unix command line tools, HSBC proprietary devops tools (AppRunner, LibraryKeeper, AntMan, sshddd)
Ruby was my first love, and, although one can write it in functional or procedural style, I grew up to be a fan of OO Ruby flavour, with Sandi Metz as a principal influencer. I tend to view JavaScript as an OO language too. But I really love the purely functional Clojure for its elegance.
Tech: Clojure, Ruby (Rails), JavaScript (ES6, Node, jQuery), a bit of Java (Maven)
A much-abused term these days, often heard in the least agile environments imaginable. But when applied properly and in a modern way, daily stand-ups with the team and product owners, continuous release cycle, regular retros and well-maintained ticketing system can do wonders for productivity.
Tech: Jira, Trello, video conferencing tools
Once a firm believer in red-green-refactor and 100% test coverage, I now came to realise that it is not always possible to religiously adhere to this approach in real life with its strict time/budget constraints and pressure to ship code. However, given an opportunity, I'd always write tests. Tests are fun.
Tech: clojure.test, Midje, Selenium, Jasmine, Mocha, RSpec, Capybara
I think that working in pairs is more productive, as it allows to learn new things and discuss concepts that you already know, thus reinforcing them in mind.
I have considerable experience of working in diverse multilingual teams (as well as leading them) under tight deadlines and liaising with multiple stakeholders.
IntelliJ Idea (with Cursive for Clojure), command line, vi, Atom, Sublime, Spring Tool Suite
- Unix tools, Bash scripting
- SQL, Postgres
- Java
- DNS, HTTP, HTTPS
- Authentication
- HTML, CSS, Twitter Bootstrap, Wordpress
HSBC Global Banking And Markets (Nov 2016 - Sept 2017)
Digital Transformation Software Developer
Our team delivered an integration solution which linked Evolve, an award-winning FX platform based on microservices architecture and built under devops and agile principles, with HSBCNet - one of the most-used corporate payments applications in the world. To this end, we developed a new suite of microservices and modified existing legacy code to use them.
Makers Consultants (Nov 2016 - present)
Software Development Consultant
I've been one of the first software consultants employed by Makers Academy when the company decided to branch into this line of services. I'm helping to shape the future of this operation, and I also have an opportunity to work for the educational side of the business when I'm between consultancy contracts.
BBC World Service (Russian) (2000 - 2016 with breaks in between)
Journalist / Senior Producer / Video Lead
Celebro Media (2014 - 2015)
Head of News
Marussia Motors/ Marussia Virgin Racing (2011 - 2012)
Head of International Communications / F1 Team Liaison
Muz-TV (Moscow) (1998 - 2000)
Chief News Editor
UTV (Belfast) (1995)
PR executive
- Pair programming, independent learning and problem-solving
- OOP, Agile, TDD, SOLID, MVC
- Software Craftsmanship
- Ruby, Rails, Javascript, Node.js
- Unity 3D with C# scripting
- RSpec, Capybara, Jasmine, Mocha, Zombie, Unity Test Tools
Projects at Makers:
Project | Description | Technologies | Testing |
---|---|---|---|
AudioDash | A 3D game reacting to audio input to modify the gaming environment Link to a playable version |
Unity 3D, C# | NUnit, Unity Test Tools |
GitSnitch | A search tool that finds Facebook secrets carelessly pushed to GitHub | Ruby on Rails, Octokit, OmniAuth | Rspec |
MakerBnB | Recreates basic AirBnB logic | Javascript, Node.js, Knex, PostgreSQL | Zombie , Mocha, Chai |
Moscow State University for International Relations (1991 to 1998 - with a career development break)
- Law
- German and English
- LLB and an additional postgrad specialist degree in International Trade Law
- Played a solo guitar in a student band
- Training for Trainers
- Leadership
- Recruitment: Fair Selection
- Professional filming of video and stills with video cameras and SLRs
- Video editing with Adobe Premiere, Final Cut Pro X and Quantel QEdit
- Photo processing with Adobe Photoshop and Lightroom
- Enterprise news and content management tools (ENPS, BBC CPS, TopCat, Jupiter)
Russian, English, a bit of German and Belarussian
I like long-distance running and things on two wheels, both motorised and not