Job Duties: Analyze user needs and software requirements to determine feasibility of design within specific time and cost constraints while working independently with minimal guidance with team leaders. Recommend software applications enhancements for the Bloomberg Terminal, which hosts over 10,000 unique software applications that underpin the global financial markets after reviewing program specifications for full cycle application development processing. Manage and read full software lifecycles by developing, engineering, and maintaining new and existing financial analysis software applications for the Bloomberg computer information system to meet internal and external user needs. Implement and maintain performance, observability, and user interaction instrumentation, analyze, and visualize collected data. Identify performance issues and propose improvements. Collaborate with application developers, and product owners to understand performance and observability requirements, direct application and infrastructure development accordingly. Break down large projects into viable increments, and develop and document requirements and specifications using existing telemetry tools and creating instruments to maintain operational intelligence, providing technical and functional support for medium sized software packages. Diagnose complex user-reported issues with our financial analysis products by working autonomously and collaboratively. Document software applications and systems design, encapsulating complex design models as a reference for users and independently create new modules containing improved or different algorithms. Review work of more junior software engineers/developers. Partner with other team members to design, build, and roll out solutions that will optimize complex workflows. Work with internal stakeholders to design the systems and applications and obtain information on project limitations and capabilities, performance requirements, and interfaces. Requirements: Position requires a Bachelor's degree, or foreign equivalent, in Computer Science, Engineering, or related, and one (1) year of experience as a Software Engineer, or as a Data Analyst, or related. In lieu of a Bachelor's degree, the employer will accept 2 additional years of experience as a Software Engineer, or as a Data Analyst, or related. Must have one (1) year of experience in each of the following skills: Data structures, algorithms, and object-oriented design concepts; Go, TypeScript, JavaScript, C++, or another high-level programming language; Distributed messaging systems (e.g. RabbitMQ, Amazon SQS, Apache Kafka); Building high-throughput distributed data processing (ETL) pipeline; and Developing analytical dashboards for visualizing telemetry data.Any suitable combination of education, training or experience is acceptable.