Performance Engineer
Uptake's business is global, disruptive, differentiated and approaches the market in a new way. We help customers identify hidden value and create growth through business and technology innovation, while also enabling cost efficiencies that generate industry-leading business performance. Our team drives this success by connecting customers and partners to the value of the Internet of Things, business-centric architectures, and key technology transitions.
Uptake is looking for a strong performance engineer to join our engineering team and become a go-to resource for anything performance related (performance/load/stress testing, optimizations, improvements etc)
Job Duties
- Act as performance stakeholder on multiple teams
- Proactively understand performance issues, identify root cause, and work diligently with peers and team members to implement solutions
- Evaluate current performance, identify bottlenecks, come up actionable plans to improve it
- Establish automated performance monitoring tools and processes
- Participate in architecture discussions, planning meetings and contribute in form of performance related backlog items or necessary recommendations
- Identify key performance metrics
- Evaluate project hardware needs based on performance metrics
- Evaluate performance of data storage solution with big amounts of data and high IOPS
- Analyze performance test results of new releases to evaluate production infrastructure impacts and compare them to previous release benchmarks.
- Work with offshore and onshore teams
- B.S. Computer Science
- 3+ years of Performance Engineer experience using Gatling/JMeter or similar technologies
- 1+ years of Linux experience
- Deep knowledge of Java (or equivalent) programming language and design patterns from a performance point of view
- Deep knowledge of OOP design principles and performance coding standards
Skills
- Strong communication skills
- Self-motivated and eager to learn
- Deep understanding of cloud based web services
- Experience working with or have knowledge of Agile Methodology
- Ability to come up with good plans, delegate tasks, train people to use new technologies and become more performance aware
- Understanding of horizontally scalable, distributed complex architectures
- Ability to identify issues not only after implementation, but also at architectural decision making stage
- Strong performance, load, stress testing skills of complex distributed systems
- Ability to work with Gatling, JMeter or similar tools
- AWS experience
- Strong problem solving skills from a technical and project management standpoint.
- Detail oriented/strong skills in research, analysis, solution validation, and implementation.
- Any experience with the following technologies is a plus:
Technologies:
Maven, Docker, JMS, AMQP, Kafka, TCP, Drools, Scala
Data Stores:
Elasticsearch, Hadoop, Cassandra, SQL