Software Infrastructure Engineer

2018.11.29 Taiwan

[Job Description]

We have multiple on-premise IT infrastructure sites with over 30,000 servers and 1Tbps internet traffic worldwide.
Our infrastructure is growing by 30% annually due to service growth and diversification.
A wide variety of applications are being deployed on the infrastructure everyday and there are more than 2,100 developers in over 10 locations worldwide.
With this scale of infrastructure and developers, Learning and operating cost is too high for developers to deploy their applications with awareness of the infrastructure and its configuration.
We, infrastructure software engineers, are responsible for building and operating the platform which enables it to connect applications and infrastructure seamlessly using software techniques and methods.
In this position, you’ll be responsible for Kubernetes platform such as "Kubernetes as a service" and "Knative (function as a service)".

Server Side Developer

1. Write Server Side Application which perform api service, scheduler service working with management software for Kubernetes like Rancher.

2. Integrate management software for Kubernetes into our Private Cloud (e.g. project cluster mapping, rbac for operation of cluster itself, make multiple backend software abstract...)

3. Understand overview of depended OSS(Knative/Rancher/Kubernetes...)

4. Develop feature k8s doesn't provide directly but be useful for user (e.g. k8s yaml editor, skeleton k8s template, helm chart catalog....)

5. Consider what additional service we should provide to internal developer in Kubernetes Platform

6. Write Integration/System Test for Kubernets as a service deployment

7. Write deployment tool to automate Kubernetes as a service deployment

8. Improve development/deployment process

9. Obsess the developer experience in private cloud

OSS Developer/Maintainer
1. Operate OSS based system so that we can provide cloud native functionality to internal developers (Kubernetes as a service, Function as a Service)
2. Code level troubleshooting for OSS we depended on like Rancher, Kubernetes, Etcd, Knative
3. Scale our Kubernetes Platform based on our requirement (more than 1000 clusters)
4. Consider/Implement the way to scale our Function as a Service
5. Automate k8s related operation by enhancing OSS
6. Evaluate latest feature and some other experiment features of depended OSS
7. Bug Fix/Customize to meet our requirements contribute to upstream as much as possible
8. Consider the good way for developing/testing/packaging process for our customization of OSS
9. Obsess the developer experience in private cloud


Required Skills and Qualifications 

1. 3+ years of experience of server-side software engineering (C or Go or Python)

2. Experience of software trouble shooting

3. Knowledge of cloud service (network and storage and virtualization).

4. Mind to learn new technologies positively

5. Ability to use English (most of communications are done in English)

6. Experience operating or integrating OpenStack or Kubernetes

7. Ability to troubleshoot OSS with code-level

Preferred Skills and Qualifications 

1. Experience customizing OSS for company business requirements
2. Experience of contributing OSS
3. Experience operating or developing a distributed system
4. Experience making presentations in tech conferences