Igor Tikhonin, Software Developer in Richmond Hill, ON, Canada
Igor Tikhonin

Software Developer in Richmond Hill, ON, Canada

Member since March 26, 2019
With many years of experience in both, system engineering and software development fields, Igor possesses all necessary knowledge and skills to be an effective DevOps engineer, able to operate successfully in rapidly changing dynamic environments, achieving the overall goal of continuous delivery.
Igor is now available for hire

Portfolio

Experience

Location

Richmond Hill, ON, Canada

Availability

Part-time

Preferred Environment

Linux, Git, Atom, Python, Ansible, Kubernetes

The most amazing...

...project I've worked on was end-to-end automation of deployment of a bank wire transfer service where application components were running on OpenShift platform.

Employment

  • Senior DevOps Engineer

    2017 - PRESENT
    Healthcare of Ontario Pension Plan (HOOPP)
    • Designed, built, and maintained complex Kubernetes infrastructure on AWS to host containerized microservice applications.
    • Integrated Kubernetes dashboard with the corporate OpenID Connect single sign-on solution, allowing users to be authenticated and granted access to Kubernetes, based on group membership.
    • Automated provisioning of AWS infrastructure elements, such as S3 buckets, SQS queues, RDS instances, required for web-based applications.
    • Developed automation playbooks for continuous delivery of microservice applications.
    • Automated firewall rules creation and modification to secure AWS cloud deployments.
    • Created and maintained CI/CD pipelines in Azure DevOps for continuous integration of web-based applications.
    Technologies: Amazon Web Services, Ansible, Azure DevOps, Kubernetes, Palo Alto Panorama
  • Senior DevOps Engineer

    2016 - 2017
    Bank of Montreal
    • Created and maintained CI/CD pipelines in Bamboo for continues delivery of web service applications.
    • Developed automation playbooks for continuous deployment of web service applications to OpenShift container platform.
    • Automated build of Docker images and push to container registry.
    • Developed scripts, Python and Shell-based, for automated release management.
    • Deployed Elasticsearch clusters for security logs consolidation.
    Technologies: Linux, Ansible, IBM WebSphere, IBM MQ, Bamboo, Jira, Git, Maven, Artifactory, Docker, OpenShift
  • DevOps Engineer

    2014 - 2016
    IBM Global Services
    • Worked on multiple middleware deployment projects based on Oracle WebLogic and IBM WebSphere.
    • Participated in building a private cloud on OpenStack platform.
    • Developed system scripts, Perl and Shell-based, to automate routine operations.
    • Deployed Docker servers to research container technology.
    • Created continuous integration pipelines in Jenkins for software development teams.
    Technologies: Linux, Oracle WebLogic, IBM WebSphere, OpenStack, Docker, Jenkins
  • Cloud Automation Engineer

    2013 - 2014
    Bank of Nova Scotia
    • Designed and built a private cloud, based on BMC Cloud Lifecycle Management.
    • Automated provisioning of IBM AIX LPARs with predefined software stack.
    • Developed an automated security hardening system to ensure the AIX LPARs’ security compliance.
    • Automated deployment of IBM WebSphere components on AIX and Linux servers.
    Technologies: BMC BladeLogic, IBM AIX, BMC Cloud Lifecycle Management

Experience

  • Migration of Microservice Applications From AWS Elastic Beanstalk to Kubernetes (AWS EKS) (Development)

    For this project, I built multiple Kubernetes clusters on AWS in development, testing and production environments, Anchore was used for container image inspection. NGINX Ingress Controler along with ALB Ingress Controller exposed services for the outside world. AWS IAM roles were assigned on containers to get access to AWS resources by kube2iam. Kubernetes Cluster Autoscaler took care of scaling up/down of the worker nodes ensuring resources availability for proper pods scheduling. AWS EBS snapshots were created automatically for persistent storage volumes by k8s-snapshots. Istio controlled traffic among all pods within and across cluster namespaces. All logs were sent to Splunk, and DataDog was used for monitoring purposes.

  • Automation of Deployment of Microsoft Dynamics GP on Azure Cloud (Development)

    Microsoft Dynamics GP is a business accounting software. As part of a bigger cloud migration initiative, I got this project to automate the installation of MS Dynamics GP components on Azure Cloud instances. That was an unorthodox automation job. The challenge was to install and configure a dozen software packages, some of which could be installed "silently" in command line, and some could be installed through GUI only. Some packages wanted to talk to MS SQL server; some packages needed SQL Server Reporting Services. So I used different Powershell modules in the automation scripts such as SQL Server and ReportingServicesTools to work with SQL services. AutoItX was used to simulate keystrokes interacting with GUIs.

  • Automation of Firewall Rules Creation in Panorama (Development)

    Panorama is the centralized management system for the Palo Alto Networks family of firewalls. I had a project where I automated the creation of firewall rules for new cloud deployments. The automation scripts were written in Python. Palo Alto Networks Device Framework (pandevice) Python library was used to interact with Panorama. Firewall rules were created or updated automatically when changes of the cloud infrastructure were detected by Amazon CloudWatch.

Skills

  • Languages

    Python, Python 3, SQL, XML, YAML, Java
  • Frameworks

    Windows PowerShell
  • Tools

    Ansible, Amazon EKS, Git, Chef, Terraform, AWS CloudFormation, Nginx
  • Platforms

    Kubernetes, Linux, Amazon, Docker, Windows, Azure, Google Cloud Platform (GCP)
  • Other

    Unix Shell Scripting, Infrastructure as Code, OpenID Connect (OIDC), Firewalls, Palo Alto Panorama
  • Paradigms

    Azure DevOps, Agile, Microservices
  • Storage

    MySQL, JSON

Education

  • Bachelor of Engineering degree in Computer Science
    1987 - 1993
    Moscow Institute of Electronic Machinery - Moscow, Russia

To view more profiles

Join Toptal
Share it with others