Senior SDK Java Developer
- 🇺🇸 United States
- On-site
- Senior
- 1 day ago
- Cognos
- Java
- SOAP
- Identity Management
- Ping
- Active Directory
- SAML
- OpenID Connect
- JVM
- Disaster Recovery
- SQL
- Object Oriented Programming
- JDBC
- XML
- JSON
- Maven
- Gradle
- Unit Testing
- Git
- Load Balancing
- SSL/TLS
- Microsoft SQL Server
- Oracle
- Windows
- Linux
- CI/CD
Job description
Senior IBM Cognos SDK Java Developer / Cognos Administrator
Position Summary
We are seeking an experienced IBM Cognos SDK Java Developer / Cognos Administrator to design, develop, support, and administer enterprise IBM Cognos Analytics solutions.
This position combines hands-on Java and Cognos SDK development with responsibility for the administration, configuration, security, performance, and operational support of the IBM Cognos Analytics platform.
The ideal candidate will have strong Java development skills, experience developing applications using the IBM Cognos Software Development Kit (SDK), and a solid understanding of Cognos Analytics architecture and administration.
The developer will create custom applications, integrations, authentication solutions, automation utilities, and administrative tools that interact with Cognos services and the Cognos Content Store. The role will also participate in maintaining highly available Cognos environments and troubleshooting complex application, infrastructure, database, authentication, and performance issues.
Primary Responsibilities
Cognos SDK / Java Development
Design, develop, test, deploy, and maintain Java applications utilizing the IBM Cognos SDK.
Develop applications that interact with Cognos Content Manager, Report Service, Batch Report Service, Job Service, and other Cognos services.
Develop utilities to automate Cognos administrative and content-management activities.
Query and manipulate Cognos Content Store objects using the Cognos SDK.
Develop applications to create, modify, move, copy, delete, and manage Cognos objects.
Develop solutions for managing report parameters, prompts, schedules, jobs, and report outputs.
Implement Cognos SDK asynchronous request and conversation handling.
Develop applications for managing Cognos users, groups, roles, permissions, and security-related objects.
Work with Cognos Search Paths, object references, properties, and Content Manager queries.
Develop reusable Java libraries and service layers that encapsulate Cognos SDK functionality.
Implement robust exception handling, logging, auditing, retry handling, and error recovery.
Optimize SDK applications to minimize Content Manager queries, network traffic, and unnecessary Cognos processing.
Diagnose Cognos SDK, SOAP/web-service, Java, network, dispatcher, and authentication errors.
Maintain compatibility between Java applications and supported Cognos Analytics versions.
Cognos Authentication / Security Development
Develop and maintain custom Cognos authentication solutions where required.
Develop and support Cognos Custom Java Authentication Providers (CJAP).
Implement trusted sign-on and custom authentication mechanisms.
Integrate Cognos with enterprise identity-management systems.
Work with PING, Active Directory, SSO, SAML, OpenID Connect, or custom identity repositories as applicable.
Implement user, group, and role resolution for custom authentication providers.
Understand Cognos authentication sessions, namespace identities, credentials, and security tokens.
Troubleshoot authentication, authorization, namespace, group membership, and permission issues.
Follow secure coding practices for credentials, authentication tokens, encryption keys, and sensitive information.
Cognos Administration Responsibilities
Install, configure, administer, monitor, and support IBM Cognos Analytics environments.
Support development, test, QA, staging, and production Cognos environments.
Configure distributed Cognos environments containing multiple application servers and dispatchers.
Configure and maintain Content Manager and standby Content Manager environments.
Configure Cognos gateways, application tiers, dispatchers, and Content Store connections.
Administer Cognos services and dispatcher configuration.
Configure and maintain Cognos namespaces and authentication providers.
Manage Cognos users, groups, roles, capabilities, and object-level security.
Configure and maintain data-source connections and signons.
Administer schedules, jobs, bursting, report delivery, and saved report outputs.
Monitor Cognos server health, services, queues, JVM utilization, and report execution.
Review Cognos logs and diagnose application and platform problems.
Configure appropriate Cognos logging and tracing for troubleshooting.
Manage log retention and ensure debug or trace logging is disabled when no longer required.
Perform Cognos deployment, migration, backup, and recovery activities.
Support Cognos upgrades, fix packs, configuration changes, and environment migrations.
Test Cognos upgrades for compatibility with custom Java applications, SDK integrations, CJAPs, custom controls, extensions, and other customizations.
Maintain appropriate Cognos disaster-recovery and high-availability configurations.
Document Cognos architecture, configuration, deployment procedures, and operational processes.
Performance and Troubleshooting
Diagnose complex Cognos performance and availability problems.
Distinguish between Cognos application, Java, database, Content Store, network, authentication, operating system, and report-design issues.
Analyze Cognos dispatcher and service utilization.
Troubleshoot interactive and batch-report execution problems.
Investigate long-running reports and scheduled report failures.
Analyze Content Store performance and database connectivity.
Work with database administrators to troubleshoot SQL performance, locking, blocking, connection, and database issues.
Analyze JVM memory, CPU, thread utilization, and application-server behavior.
Tune Cognos services, process configuration, and concurrency settings based on measured workload.
Troubleshoot SDK application performance and excessive Content Manager or report-service requests.
Develop logging and monitoring capable of tracing operations across Java applications and Cognos services.
Java Development Requirements
The candidate should have strong knowledge of:
Java
Object-oriented programming
Interfaces and inheritance
Java Collections Framework
Generics
Exception handling
Multithreading and concurrency
JDBC
SQL
XML
JSON
HTTP/HTTPS
Web services
REST and SOAP concepts
Authentication and session management
Logging frameworks such as Log4j2 or SLF4J
JAR management and Java classpaths
Maven or Gradle
Unit testing
Source control using Git
Secure coding practices
Experience developing enterprise Java applications using layered architectures such as service, repository, and DAO patterns is preferred.
Cognos SDK Knowledge
The candidate should have experience with or a strong understanding of:
IBM Cognos Java SDK
Content Manager Service
Report Service
Batch Report Service
Job Service
Cognos Content Store object model
BaseClass and Cognos object types
SearchPaths
Object references
Cognos object properties
Content Manager queries
Report execution
Report parameters and prompts
Asynchronous Cognos conversations
Schedules and jobs
Users, groups, and roles
Cognos permissions and security
Authentication sessions
Cognos SDK exception handling
Cognos Administration Knowledge
The candidate should understand:
IBM Cognos Analytics architecture
Distributed Cognos environments
Application tier and dispatcher architecture
Content Manager
Content Store
Gateway configuration
High availability and failover
Load balancing
Cognos Configuration
Cognos Administration
Authentication namespaces
Data-source configuration
Report scheduling
Batch versus interactive processing
Cognos logging and diagnostics
JVM configuration and monitoring
Deployment archives
Environment migrations
Backup and disaster recovery
Cognos upgrades and fix packs
SSL/TLS and certificate management
Database Knowledge
Strong SQL and relational database knowledge is required.
Experience with one or more of the following is preferred:
Microsoft SQL Server (mandatory)
Oracle
The candidate should understand:
JDBC connectivity
Connection pooling
Transactions
Isolation levels
Database locking and blocking
Indexes
Query performance
Stored procedures
Database troubleshooting
Direct modification of IBM Cognos Content Store database tables should not normally be used as an application-development technique. Supported Cognos APIs and administration mechanisms should be used whenever possible.
Required Qualifications
Bachelor's degree in Computer Science, Information Systems, Software Engineering, or equivalent professional experience.
Strong professional Java development experience.
Experience with IBM Cognos Analytics.
Experience using the IBM Cognos SDK or similar enterprise APIs.
Understanding of Cognos Content Manager and the Content Store.
Strong SQL and relational database skills.
Experience troubleshooting enterprise applications.
Experience with Windows and/or Linux server environments.
Strong understanding of authentication and authorization concepts.
Ability to analyze complex technical problems across application, database, network, and infrastructure layers.
Strong written and verbal communication skills.
Ability to document technical designs, configurations, and operational procedures.
Preferred Qualifications
Experience administering IBM Cognos Analytics 11.x or 12.x.
Experience developing Cognos Custom Java Authentication Providers (CJAP).
Experience implementing Cognos trusted sign-on.
Experience with Active Directory, PING, SAML, or OpenID Connect.
Experience with Microsoft SQL Server and Oracle.
Experience with Cognos high-availability and distributed environments.
Experience upgrading or migrating Cognos Analytics environments.
Experience developing administrative automation tools using the Cognos SDK.
Experience with CI/CD and automated deployment processes.
Experience supporting mission-critical enterprise reporting environments.
Experience with performance monitoring and application diagnostics.
Key Competencies
The successful candidate should demonstrate:
Strong Java software-development skills.
Strong analytical and troubleshooting abilities.
Understanding of enterprise application architecture.
Ability to troubleshoot problems across multiple technology layers.
Ability to write maintainable and reusable code.
Attention to security and production stability.
Ability to work independently on complex technical problems.
Ability to communicate effectively with developers, administrators, database administrators, infrastructure teams, security teams, and business stakeholders.
Example Projects
The successful candidate may work on projects such as:
Developing Java utilities to automate Cognos content administration.
Building applications that search, inventory, modify, or migrate Cognos Content Store objects.
Developing Cognos SDK applications for schedule and job management.
Creating custom Cognos authentication providers.
Implementing trusted sign-on solutions.
Integrating Cognos with enterprise identity-management systems.
Building Cognos security and permission-management utilities.
Developing environment comparison and migration tools.
Automating Cognos deployment and configuration processes.
Developing health-check and monitoring utilities.
Troubleshooting large-scale Cognos production environments.
Supporting Cognos version upgrades while maintaining compatibility with custom Java applications and extensions.
- Qualifications: Graduate
- Range of Year Experience-Min Year: 8
- Range of Year Experience-Max Year: 10
Senior SDK Java Developer · Infinite Computer Solutions