Location : Plymouth, MN
Provide technical leadership in system architecture, site performance, site reliability, automation, monitoring and consistency across development and production systems. Actively monitor and manage high availability Software as a Service platform to maximize uptime and performance. Provide support to both the software development and IT infrastructure teams.
ESSENTIAL JOB DUTIES:
Provide technical leadership for system engineering and software development efforts by integrating and automating various systems and technologies such as web applications, relational databases, information security, servers, networking, etc.
Develop and maintain configuration management systems.
Review and analyze current systems and processes to determine requirements.
Design, develop and maintain tools to automate processes for product development team.
Develop and maintain monitoring systems.
Maintain infrastructure and systems to improve automation of deployments and to improve scalability.
Ensure design, structure, and content meet performance guidelines; may assist with code design, reviews, test planning and testing.
Assist Software Architects and System Administrators in complex projects.
EDUCATION: Bachelor’s degree in computer science, software engineering, or related field or an equivalent combination of education and related experience.
EXPERIENCE: Three to five years system administration experience, two to five years of programming experience. Must have experience with DevOps in a Web Application / Software as a Service environment. Must have experience with configuration management, automation, performance, and scalability.
Languages: Required: PHP, Python or Ruby
Databases: Required: PostgreSQL. Beneficial: Cassandra, Hadoop, CouchDB, MongoDB, Redis
Platforms: Required: Linux. Beneficial: Amazon Web Services, OpenStack or VMWare
Source Code Control with Git
Puppet, Chef, Salt or CFEngine
Infrastructure design for scalability
SKILLS AND COMPETENCIES:
Communication – demonstrates interpersonal oral communication skills by speaking clearly and persuasively in positive or negative situations. Written communication skills are clearly written with the audience identified and the message defined in an understandable format.
Creativity – ability to create original and unique ideas and adds value in brainstorming settings.
Dealing with ambiguity – is effective in coping with change and can comfortably handle risk and uncertainty.
Planning/organizing – prioritizes and plans work activities, uses time efficiently and develops realistic action plans.
Problem solving – identifies and resolves problems in a timely manner and gathers and analyzes information skillfully.
Self-starter – Must be self-motivated and able to work with minimal day-to-day supervision.
Teamwork – maintains inter- and intradepartmental workflow by fostering a spirit of cooperation.
Technical Learning – ability to learn and comprehend new technical skills and knowledge.