Short Description
We're looking for a Cloud Platform Engineer within the Cloud & SW Platform Business Unit at Lenovo. In this role, you will be expected to bring hands on technical expertise and execution leadership in Cloud Solutions & Architecture supporting the IoT and Cloud platform. You'll work in emerging and traditional technologies (such as Java, React, RESTful services, JSON, XML, HTML / HTML5, CSS, NoSQL databases, relational databases, and AWS/Cloud Infrastructure to name a few). You will help create container platform solutions and microservices used by our development teams to transform our consumer and business applications and services into scalable, elastic systems that can be instantiated on demand.Job Description
- Write server side code for our cloud platform, create robust high-volume production applications, and develop prototypes quickly.
- Build, design and implement scalable microservices for PaaS, IaaS or SaaS.
- Design and develop high performance, high availability systems
- Develop software in Java with Eclipse and Maven
- Develop REST services using JAX-RS, Jersey, Jackson
- Working with cloud software technology (e.g. NoSQL, ElasticSearch, Hadoop)
- Document, support, and maintain software functionality
- Prepare technical requirements and software design specifications
- Implement complex subsystems of cloud platform
- Bring deep understanding of programming approaches with a broad knowledge of large-scale, SaaS application development.
- You will regularly discuss short and long term architectural objectives and occasionally advise on solutions approach, where applicable.
- Proactively engage managers and technical leads across the Engineering Organization to ensure development is meeting the needs of customers both internal and external.
- Travel may be required (10%) for meetings, technical reviews and onsite delivery activities.
- BA/BS degree in Computer Science, related technical field or equivalent practical experience.
- 5+ years of excellent software programming skills in Java, NodeJS, and know-how of JVM performance tuning
- Strong Understandings of open-source technologies/framework (Linux, Spring, Guice, javax-rs)
- Experience with one or more scripting/programming languages such as Java, Python, Ruby, Powershell, Bash, JavaScript, Perl, or C++
- Experience working on a large-scale deployments and performance tuning.
- Engineering process experience with the Agile Software Development principles
- Previous experience with containers and orchestration tools such as Docker, Kubernetes, Swarm
- Working knowledge of version control systems, familiarity with github
- Experience building, installing, configuring, and patching software and services
- Compiling and building software with tools such as Make, Maven, Gradle, Grunt, or Gulp
- Familiarity with automation, configuration management, and cloud provisioning tools such as Puppet, Chef, Ansible, or Terraform
- Experience with continuous integration (CI) tools such as Jenkins, Bamboo, Nexus, or Artifactory
- Familiarity with administering, automating, and deploying to cloud-based environments such as AWS (preferred), Google Cloud Platform, or Azure
- Familiarity with HTTP request/response flow (for example, using REST)
- Comfortable with Bash and the command line
- Preferred Qualifications
- MS degree in Computer Science or related software engineering field.
- Demonstrated understanding of the current state of the art for infrastructure automation, continuous integration/deployment, SQL/NoSQL/NewSQL, networking, and cloud-based delivery models.
- AWS Solution Architect certification is a big plus
- Experience with Acceptance Test Driven Development practices is a big plus
- Comfortable talking about technical issues with business people and business issues with technical people.
- Able to express complex concepts in plain language to reach broader audiences.
Cloud Platform Engineer