07/18/2018 updated

PN
partially available

Lead Software Engineer at Xignite

San Francisco, USA
USA
Master of Science in Computer Science
San Francisco, USA
USA
Master of Science in Computer Science

ASP.NETJava (Programming Language)JavaScript.NET FrameworkXML SchemaMicrosoft WindowsAutoCADApplication Programming Interfaces (APIs)AlgorithmsAlgorithm DesignApple IOSSoftware ApplicationsOptical Character Recognition (OCR)AutomationDelphi (Programming Language)Bug ManagementC Sharp (Programming Language)Cisco Certified Network AssociateSoftware as a ServiceCompilersComputer ProgrammingDatabasesCommand-Query Responsibility Segregation (Software Development)Database SchemaLanguage Integrated QueryEntity FrameworkFinancesFinancial InstrumentGenetic AlgorithmHuman ResourcesImage ProcessingWindows Communication FoundationMaintenanceMathematicsWindows Presentation FoundationMicrosoft SQL ServersTeam Foundation ServerMongoDBMultitaskingModel View ViewModelOpen Data ProtocolObject-Oriented Software DevelopmentParsingPerforcePerformance ImprovementRisk AnalysisSemanticsServer-SideService-Oriented ArchitectureSoftware DesignSoftware EngineeringSQL DatabasesVirtual MachinesWindows FormsExtensible Markup Language (XML)Design PatternsOil and GasMultithreadingPackaging and Processing DutiesNantData LayersVba Programming LanguageAsynchronous ProgrammingEvent SourcingPayroll ManagementCode RefactoringRisk ManagementTIBCO (Software)Data CachingProgramming Languages
C#, Software Development, .NET, Software Design, Service Oriented Architecture Design, Algorithm Design, Object Oriented Design, WCF, LINQ, Design Patterns, Databases, SQL, Microsoft SQL Server, OData, WPF, MongoDB, Entity Framework, XML, XML Schema, MVVM, OCR, CQRS, Image Processing, Oil/Gas, Perforce, TFS, Genetic Algorithms, Compilers, CCNA, Parallel Programming, Multi Tasking, Rx, Reactive Extensions, NAnt, Java, Borland Delphi, Event Sourcing, Financial Instruments, Mathematics, Windows, Windows 7, Windows 8, Mac OS, ASP.NET, JavaScript, WPF Development, WCF Services

TIBCO Loyalty Lab
Senior Software Engineer
03.2014 - today
- Developed NAnt extensions in C# to automate the build, packaging and deployment process.
- Created a C# tool to automatically synchronize Aster database schema with the SQL database schema.
- Refactored all the tiers of the Loyalty Lab’s SaaS application; to make it compatible with the changes made in the database schema. To speed up and control this process I have created an IL processing tool.
- Having multiple sources of truth, and multiple copies of data eventually leads to inconsistency in the system. I have prepared a .Net based utility, which auto generates configuration files. It uses a single source of truth to manage creation, data changes, and packaging of all configuration file in a multi-tenant system.
- Changed the build and deployment logic to follow the database structure changes made in the system. Previously all tenants used the same set of databases but we needed to make some of databases tenant specific to improve the performance.



Triquesta
Technical Consultant
12.2013 - today
Remotely working on development, bug-fixing and performance improvement of Triquesta SaaS product as needed (responsibility details are the same as stated below)



Triquesta
Software Engineer
04.2013 - 12.2013
- Developed Command and Event Handlers, and WCF services to manage financial instruments in “Portfolio and risk management” application.
- Utilized WCF data service Interceptors to implement the authorization policy
- Reduced the maintenance and testing costs by refactoring the existing code and applying the best practices.
- Improved frontend’s startup speed up to 3 times using multi-threading and data caching
- Created real time reports reflecting risk, and profit related information. The WPF UI and Model were completely decoupled using MVVM pattern to simplify the testing and maintenance process (RX, LINQ to observable and asynchronous programming was vastly used to implement smooth, responsive UI).



R.A Rayan
Programmer Analyst
01.2011 - 03.2013
- Implemented server side of a financial platform and its payroll and human resource sub-systems. C# was used as the programming language and WCF was the technology used for communication between distributed parts.
- To improve the performance the data layer was made to catch the data in memory and synchronize it with the persisted data
- Designed and implemented Image processing algorithms to filter noises, compensate the rotation and scaling, and skeletonize the image before passing it to the OCR engine.
- Implemented “election ballot tally”, “money tracing”, and “survey form reading” applications, which used the scanner API to read the images from scanner, and saved the results to SQL database.
- Developed interface components like data grid, combo boxes, etc. for windows forms application in C#
- Improved an existing ASP.NET, LMS system application to support multiple languages



Eni
Automation Supervisor
04.2009 - 11.2010
- Implemented programs to automate extracting data from auto-cad drawings, generate technical documents, prepare list of tasks, and report the progress using VBA
- Prepared logic diagrams and cause & effect tables and tested their implementation in DCS



Qarazmi Software Development Company
Software Developer
03.2009 - 09.2009
- Remotely Tested performance and fixed bugs of the Time-tabling software as needed (Delphi).
- Remotely contributed in developing compiler’s virtual machine (C#).



Qarazmi Software Development Company
Software Developer
09.2008 - 03.2009
- Researched on genetic and hill-climbing algorithms
- Contributed in Development of Time-tabling engine and implemented the UI using Delphi
- Implemented lexical analyzer, parser and semantic analyzer (for compilers) using C#.Net
 

Languages

EnglishFluentPersianNative speakerRussianFluent

Contact form

Log in to get in touch

You need to be logged in to use the contact form.

Sign upLog in