Member Technical Staff
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.
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. Work is going on across our product spectrum from low-level protocols to high-level dashboards and monitoring capabilities.
We have opportunities across our entire team including core product development, development of automated integrating, building, validation and stress testing, cloud support (private, public, and hybrid), user interfaces, containerization technologies like Docker and Kubernetes, and Messaging as a Service. Our opportunities are, at their core, a development role so every position is oriented around development including full lifecycle from requirements, through design, development, to verification. We use a variety of languages and technologies including using and contributing to open source projects and technologies as appropriate. We’re working hard to do things quickly, efficiently, and to scale.
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
Define, design, develop, and validate new messaging capabilities including areas such as User Interface, core messaging functionality, performance tuning, and new feature development. This is a team-based group where the candidate will be part of a larger development team with exposure to all parts and stages of the development of the specific functionality being worked on. Responsibilities include the full software life cycle from requires and design, through development and unit testing (formal testing is handled by the QA team).
What You Will Learn
· Professional software development practices
· Development of high performance messaging software
· Increased understanding and knowledge in the area of networking concepts and practice as well as the design and development considerations of highly distributed and coordinated software systems
Who You Are
? Bachelor of Science degree in Computer Science or Computer Engineering with extra consideration given to Master of Science candidates
? Experience with at least one major language such as C/C++, GoLang, or Java
? 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
Headquartered in Palo Alto, CA, TIBCO Software enables businesses to reach new heights on their path to digital distinction and innovation. From systems to devices and people, we interconnect everything, capture data in real time wherever it is, and augment the intelligence of organizations through analytical insights. Thousands of customers around the globe rely on us to build compelling experiences, energize operations, and propel innovation.
Our teams flourish on new ideas and welcome individuals who thrive in transforming challenges into opportunities. From designing and building amazing products to providing excellent service; we encourage and are shaped by bold thinkers, problem-solvers, and self-starters. We are always adapting and providing exciting opportunities for our employees to grow, learn and excel.
We value the customers and employees that define who we are; dynamic individuals willing to take the risks necessary to make big ideas come to life and who are comfortable collaborating in our creative, optimistic environment. TIBCO – we are just scratching the surface.