SR. Software Engineer
Duties & Responsibilities:
- Develops and debugs software in support of new and existing applications
- Develop, execute and thoroughly document unit and system-level test plans
- Designs changes to new and existing applications
- Provides support for production applications (7x24)
- Participate in Agile methodology and ceremonies
Knowledge, Skills and Abilities (KSAs): What KSAs are required to perform this job?
- Must be a self-starter, adapt easily to change and promote a collaborative team environment.
- Continuous learner able to identify skill gaps and acquire and employ new knowledge.
- Mentor junior team members and seek guidance from senior team members.
- Understands business concepts and user procedures.
- Effective communicator with technical and business team members.
- Proactively identifies opportunities to improve current applications’ functionality and performance.
- Participates in code reviews and scope of work estimation and forecasting.
- Writes high-quality code that meets the customer needs and strives for simplicity, clarity and testability.
- Able to provide application support, analyze problems and provide solutions for complex issues.
- Able to develop reusable software building blocks to enable faster delivery.
- Employs test-driven development and integrates unit tests in development tasks.
- Strong ability to relate code modules to the application as a whole and the underlying business objectives.
- Able to stay current on technology changes applicable to your domain and how to apply them.
- Strong analytical skills with experience gathering requirements and designing new functionality.
- Lead intra-domain initiatives composed of distributed teams and remote team members and customers.
Work Experience and/or Education:
- 5+ years experience in software development in an IT organization or equivalent educational experience.
- 4+ years experience in both API and UI development using Java
- 3+ years experience delivering software supporting Transportation-related applications
- 3+ years experience with a relational database (i.e., Oracle, MSSQL, Postgres, etc.).
- 1+ years of experience with No-SQL Databases (i.e Cassandra, Mongo DB etc)
- Bachelor’s degree in computer science or related field, trade school or equivalent work experience.
- Experience with a higher-level language (i.e. C#, Java, Python etc.)
- Firm understanding of Cloud and distributed systems challenges
- Working with stateful and/or stateless containers and orchestration via Kubernetes or equivalent
- Experience with distributed messaging systems like Kafka
Experience Level: Senior Level