Sorry, this listing is no longer accepting applications. Don’t worry, we have more awesome opportunities and internships for you.

Member Technical Staff (Messaging Team)

TIBCO

TIBCO

Member Technical Staff (Messaging Team)

Remote
Full Time
Paid
  • Responsibilities

    Overview

    This opportunity is for a self-starting individual to join a professional software development team and participate in all areas of software development from definition, design, development, and validation with a focus on test engineering.

    The Messaging Team develops several products which form the underpinnings for a wide range of TIBCO's products and technologies but are also available directly to our customers to handle some of the toughest data distribution problems around in terms of speed, low latency, highest performance, and breadth of scale.

    Our customers are in areas including finance (exchanges, brokerages, hedge funds, and market makers for whom time literally is money), transportation, distribution, logistics, to consumer information providers (supporting apps presenting near real-time information like weather, scores, and news) using our WebSockets support to push their data out to mobile devices. Our software forms the nervous system of large scale, highly distributed, event-driven systems worldwide; whether they are running on a LAN, across a world-wide WAN, in the cloud, or reaching out to mobile devices.

    In addition to messaging, our team here is building one of the most advanced in-memory, distributed data grid products to bring memory-speed access to many terabytes of information in a very high performance, incredibly scalable, and robust way.

    This is challenging work. We're working on highly distributed and parallel systems from the top all the way down to the protocol levels. Our messaging products are built on a C and GoLang base with language bindings for most other major languages with supporting products built on a variety of technologies including Python, REST JSON, and YAML to name just a few.

    Our product IS software (a full swath of messaging APIs across multiple messaging technologies) FOR software developers (who use our underlying technology to develop their market-crushing solutions) - to ensure we’re on top of our game, we develop large scale, high throughput, highly reliable and repeatable systems to prove to us that we are getting the job done.

    If you want to see some of this yourself, you can download fully functional versions of our highest performance FTL messaging product as well as its WebSocket support (provided by our eFTL messaging product) at https://www.tibco.com/products/tibco-ftl and https://www.tibco.com/products/tibco-eftl respectively. Use the "Community Download" button to access the download areas. The Community Edition supports Linux, MacOS, and Windows and can be run on configurations as small as a single machine for development purposes (including your laptop).

    What You'll Do

    As part of the team, you will have the opportunity to define and develop the complete End-To-End automated testing tooling and methodologies for a wide range of messaging products including numerous open source technologies like Apache Kafka, Apache Pulsar, the Eclipse Mosquitto MQTT broker, a full complement of bridging technologies, and cross-technology and cross-platforms tools covering messaging management, messaging monitoring and TIBCO’s Cloud Messaging offerings. Leveraging tools like GitHub Actions, Docker, Kubernetes, and other automation tools, this is a rare opportunity for an engineer who strives for top quality, is willing to work hard with a great experienced team, and make a huge impact on the entire team. Our goal is total automation, total integration.

  • Qualifications

    Who you are

    • Bachelor of Science degree in Computer Science or Computer Engineering with extra consideration given to Master of Science candidates
    • Experience in software development that includes experience with networking-intensive, distributed, and multithreaded applications
    • Experience with at least one major language such as C/C++, GoLang, .NET, or Java
    • Experience with scripting languages such as Python or shell scripting
    • Demonstrable knowledge of computer networking concepts and protocol understanding
    • Knowledge of multithreaded and distributed software concepts
    • Software development experience which can be based on previous internships or independent efforts such as personal software development projects or open source project contributions
    • Enthusiasm and drive to learn new concepts and participate as part of a cooperative and professional software development team
    • Effective verbal, written and presentation skills are crucial

    Pluses

    • Experience with build tooling such as Jenkins
    • Experience with virtualization or containerization technologies such Kubernetes and Docker
    • Experience with Linux / Unix configuration and management
    • Knowledge of Apache Kafka, Apache Pulsar, and / or MQTT
    • Working knowledge of version control tools (such as git) and defect tracking tools (such as JIRA).
    • Understanding of Continuous Integration / Continuous Deployment concepts
  • Industry
    Computer Software