Principal Software Engineer
Omnitracs
Key Job Functions/Requirements
Experience with Web Services and Serialization (XML, JSON, SOAP, REST)
Experience with NoSQL and SQL databases
Experience with writing optimized database queries
Experience with architecting and developing web applications
Experience with OOP Architecture, Design Patterns and Implementation
Experience with performance analysis and tooling
Experience writing Unit tests (i.e. Axios, Jest, Enzyme, Jasmine, Karma, CasperJS)
Experience with Agile Management Tools (i.e. Confluence, JIRA, VersionOne)
Experience with Java Programming or other high level language (C++, Objective C, C#, ...)
Experience with Bootstrap
Experience with database optimization
Experience with Cloud Application Design (i.e. AWS, Serverless, Container, Docker…)
Familiar with at least one dynamic scripting language (PHP, Perl, Python or Ruby)
Proficiency in Javascript , CSS and SASS/LESS frameworks
Hands-on experience with construction of complex engineering solutions and knowledge of software development methodologies
Deep dive on large-scale SaaS products and be prepared to assist architecture with setting the vision, organizing and evolving the code-base for the entire product
Collaborate and communicate effectively with product, infrastructure, DevOps, architecture, and engineering to guide an initiative's technical direction
Along with Architecture, meet one on one with tech leads to provide guidance and ensure work is moving towards vision
Assist in establishing and supporting coding standards
Stay current with industry standard tools and technologies
Engage in tribe-level ceremonies, including planning, grooming, product demonstrations, and retrospectives
Perform risk analysis on work items defined for an initiative
Assist in enabling and maintaining the continuous delivery pipeline and exhibit a DevOps mindset to enable autonomy of agile scrum teams
With guidance from Architecture, perform feasibility studies and proofs of concepts on new solutions or techniques which may be employed
Respond to trouble/support calls for production applications in order to make quick repair to prevent application outages
Create and/or update documentation to support development efforts. Documentation may include detailed specifications, implementation guides, architecture diagrams and/or design documents
Excellent time management skills and ability to prioritize
Able to translate customer and business needs to technical solutions
Resilient to change
Establish User Personas in collaboration with Product Management
Mentor and train other Software Engineers
Be a resource for multiple challenging software engineering projects at a time
Is a positive influence to unite teams to achieve success – has a “Can do” attitude
Maintain a holistic view of the project, never losing sight of the smaller details
Proficient in the following:
General foundation in enterprise computing including networking, infrastructure, virtualization, web tools and technologies, databases
Object oriented design principles (SOLID), design patterns, enterprise integration patterns, Microservice architecture
Familiarity with non-functional software qualities (resilience, maintainability, etc), and experience implementing related design patterns and analyzing trade-offs
Education
Bachelor’s Degree in Computer Science or equivalent
Minimum Experience
10+ years
Key Responsibilities
Architect and implement end-to-end software solutions with a focus on scalability, resilience, and performance.
Provide technical leadership and strategic guidance across teams on design, development, and implementation.
Integrate and leverage AI tools like Copilot and automation platforms to enhance product capabilities and engineering efficiency.
Design and implement event-driven and queue-based systems using technologies like Kafka or RabbitMQ.
Apply solid object-oriented principles and software design patterns to build clean, maintainable, and extensible systems.
Champion best practices in Java, Spring Boot, and microservices-based architecture.
Drive excellence in ORM frameworks (e.g., Hibernate, JPA) and deep expertise in RDBMS systems, especially PostgreSQL.
Guide build and deployment processes using Gradle, CI/CD pipelines, and automated quality checks.
Collaborate with stakeholders to ensure alignment between technical strategy and product goals.
Conduct architectural reviews, lead PoCs, and evaluate emerging technologies to meet evolving business needs.
Mentor and coach engineers, fostering continuous improvement and skill development across the team.
Contribute to technical decision-making, risk mitigation, and delivery assurance across multiple projects.
Specialized Knowledge & Skills
Languages & Frameworks: Java, Spring Boot, Spring Cloud, JPA, Hibernate
Architecture: Microservices, REST, Domain-driven design, Event-driven architecture
AI & Automation: Familiarity with AI-driven development tools, intelligent code assistance, and workflow automation
Queues & Messaging: Kafka, RabbitMQ, or similar message brokers
Databases: PostgreSQL, advanced SQL, data modeling, query tuning
Build & Deployment: Gradle, Git, Docker, Kubernetes
Best Practices: TDD, CI/CD, design patterns, code quality, security, observability
Cloud & DevOps: Cloud-native development (AWS), containerization, monitoring tools