Originally published on my blog: All You Need Is Backend.
Evaluating accomplishments motivates me and gives a breath of fresh air for the new ones. I believe that it's an essential exercise for goals setting.
I'm proud to be a part of Atlassian Stride team in 2017. Working for the company accelerates professional growth gigantically.
During my vacation, I analyzed the last year of really hard work (the hardest in my career) to make the list of highlights.
I became a technical leader of a geo-distributed backend team; a part of Atlassian Stride product. The transition happened in November 2016 but the first project was delivered by our team (called Stride Transformers) in February 2017. I think that I finally understood the new role when the services started working in production environment serving needs of real people.
The Stride Transformers engineering team grew up from 4 to 8 members including myself. Having all the talented and passioned people moving towards common product goals was essential on the road to success. Here's the shortlist of some things that we delivered playing as a team:
- We built asynchronous Python framework to wrap-up existing codebase and reused it for other projects in the same domain. It saved us a lot of time, reduced the number of mistakes, boring tasks, and recruited members of other teams to join us and learn the framework :). By using the framework, we created around 40 Python services for 10 another related projects. All infrastructure for that was defined as code and described with CloudFormation templates.
- We built a Python library that generates ... other async Python libraries - clients for internal APIs made by other teams. After that breaking-compatibility changes stopped being a nightmare. It's cheap for us to update our codebase.
- Using the tooling mentioned we successfully built software from scratch, delivered the scheduled projects and moved them to production. The "intimate feeling" of enabling the services in production is unforgettable.
- Besides the planned work, we had some nerd fun. Our team won Atlassian ShipIt (a quarterly hackathon) this year two times in a row - in June 2017 and in September 2017. Both in Austin's location and in People's Choice nomination (other fellow Atlassians vote for projects). I learned that making software that works in the staging environment is possible within 24 hours. The main thing - the services built for the first project were productized, polished accordingly and are already running in production. Speaking about the latest ShipIt project - it was selected for Stride Award. Looking forward to tackling it to deliver to our customers.
I think that I learned how to do cross-team collaboration in the right way. I'm happy that in Software Engineering you can engage talent worldwide. This year I collaborated with the teams located in Texas, Ukraine, Australia, and California. I like the moment when you first time finally meet a person that worked with you for a couple of months. And go for a lunch :)
I slightly improved my presentation skills and gave two public talks for Austin Python Meetup. Also, I gave a company-wide talk about the technology that we built as well as a dozen of demos for different Stride milestones. The slides from publically available talks can found:
Started the All You Need Is Backend blog and published 9 posts. Some of them were featured on HackerNews and were in Top-5 for a couple of days. I found sharing my thoughts very useful for keeping knowledge in order.
Completed 15 technical online courses. Primarily on Amazon Web Services, Distributed Systems, and various Data Storages: Kafka, Cassandra, Hadoop, Riak, and CouchDB.
Finally, my tech stack from 2017:
- Python, and it’s only Python 3
- Asyncio, aiohttp, and other aio-libs
- MySQL, Elasticsearch, and Redis
- Amazon Web Services: EC2, S3, SQS, RDS, ElastiCache, CloudFormation, CloudWatch
- Monitoring: Datadog, Elasticsearch/Logstash/Kibana, ElastAlert, Splunk
- Atlassian tools: Stride, Jira, Bitbucket, Bamboo, Confluence, and Trello
Writing the list was great, and I really enjoyed that. I am so grateful that the Atlassian company and Stride organization gave me this opportunity to grow. It was hard to achieve all the things, but we're doing the right ones.
Kudos to my wife Tania for her patience when I had late meetings with Sydney teams (we're 8 hours ahead of them) and extremely early collaboration with my teammates in Ukraine after that (Texas is 8 hours behind them).
I wrote a list of my tech goals for 2018 but will share this with you in a year. We will see what will be accomplished over the time.
P.S. I also gained 20 pounds eating BBQ and TexMex. Will try to gain more the next year.